Home Projects About GitHub Repository
v0.1.0 Self-Hosted Web App Open Source PHP 8.3 MySQL 8.0 Vanilla JS Tailwind CSS REST API Docker Compose PHPMailer

Bathyal

A lightweight, self-hosted project management application built for teams that demand complete data ownership, intuitive Kanban workflows, real-time time tracking, and zero subscription overhead.

Core Features & Modules

Projects & Dynamic Sections

Organize team workloads into structured projects with drag-and-drop sections, custom status labels, and multi-project task association.

Granular Task Lifecycle

Hierarchical subtask tree support, multi-user assignment, rich-text task descriptions, start/due date scheduling, and progress states (Todo, In Progress, Paused, Completed).

Integrated Time Tracking

One-click interactive timer controls per task with pause/resume support, automatic interval aggregation, and comprehensive team time logs.

Teams & Role Permissions

Create organization teams, invite members, and configure fine-grained role permissions (Admin, Manager, Member, and Viewer) across projects.

Notifications & Email Delivery

Unified in-app notification center with category filtering, collaborator mentions, and reliable SMTP dispatch powered by PHPMailer.

Reporting & JSON Export

Visual distribution dashboards, project workload analytics, overdue task monitoring, and structured JSON report exports.

Architecture & System Tiers

Application Core

PHP 8.3 & Front Controller

  • Routing: Centralized front-controller router (index.php) handling view dispatch and auth gates.
  • Client Layer: Lightweight Vanilla JS (app.js) and Tailwind CSS with no single-page framework overhead.
  • API Surface: Dedicated REST JSON endpoints under /api/ (tasks, sections, teams, uploads).
Data Layer

MySQL 8.0 & Relational Schema

  • Integrity: PDO prepared statements with strict parameter binding and foreign key constraints.
  • Timezone: Enforced UTC storage across created/updated timestamps and active time logs.
  • Task Multi-Homing: Normalized schema allowing tasks to belong to multiple projects simultaneously.
Deployment

Containerization & Services

  • Docker Stack: Multi-container orchestration (Nginx web server, PHP-FPM, MySQL 8.0).
  • Automated Seeding: Automatic database schema execution on initial container startup via database.sql.
  • SMTP Email: PHPMailer integration for team invites, password recovery, and assignment alerts.

Self-Hosting & Docker Deployment Guide

Full installation instructions, environment variable configurations (.env.example), and Docker Compose recipes are available in the open-source GitHub repository.

Bathyal on GitHub Read Docker Deployment Guide

Frequently Asked Questions & Deployment Specs

What is Bathyal and what technology stack does it use?

Bathyal is a lightweight, self-hosted web application for team project management. Built with PHP 8.3 and MySQL 8.0 with Vanilla JavaScript and Tailwind CSS on the frontend, it delivers responsive Kanban boards and task lifecycles without bloated client framework dependencies.

How is Bathyal deployed and maintained?

Bathyal is deployed with a single Docker Compose command orchestrating Nginx, PHP-FPM 8.3, and MySQL 8.0 containers. Database schema migrations execute automatically upon initial startup.

Does Bathyal support time tracking and team permissions?

Yes. Every task includes an interactive timer with pause and resume controls, automatic interval calculation, and team time log summaries. Permissions are governed by four granular roles: Admin, Manager, Member, and Viewer.

Does Bathyal include a REST API?

Yes. Bathyal provides comprehensive REST JSON endpoints under /api/ for managing projects, sections, tasks, time entries, notifications, and team assignments programmatically.