Task manager

CheckIt is a professional-grade task management web app built with PHP, MySQL, and Docker.
It enables users to organize their work into domains, projects, and tasks — all from a clean, responsive interface.

Features

  • User authentication and secure session management
  • CRUD operations for domains, projects, and tasks
  • Dashboard with key statistics
  • Task tracking and completion status
  • Editable user profile and account settings
  • Secure password hashing and input validation
  • Data persistence through MySQL and PDO
  • Responsive, mobile-first layout (Bootstrap 5)

Development Specs

  • Frontend: HTML5, CSS3 (Bootstrap 5), JavaScript
  • Backend: PHP 8, PDO for secure database access
  • Database: MySQL
  • Deployment: Docker & Nginx
  • Architecture: MVC-inspired modular design

Desktop View

The Challenge

One of the main challenges was designing a modular and maintainable PHP architecture capable of managing multiple entities (users, domains, projects, and tasks) without duplicating logic or compromising scalability.

I built a centralized PDO connection layer (src/pdo.php) and used prepared statements across all queries to ensure strong protection against SQL injection. Each feature module (authentication, projects, tasks, settings, etc.) interacts with the database through this secure interface.

Data validation and session management were also key concerns. User input is carefully validated before insertion, and sessions are configured with HTTP-only cookies and SameSite protection to prevent common attacks.

Dockerizing the application introduced additional complexity: setting up separate development and production environments, configuring Nginx for each, and ensuring persistent database storage through volumes.

Responsive Design

The application adapts seamlessly across all devices

task manager homepage mobile
task manager login mobile
task manager dashboard mobile
task manager domains mobile
task manager project mobile
task manager settings mobile

Other Projects