A comprehensive web application for managing tasks, user accounts, and administrative functions.
- User authentication and authorization
- Admin and user role management
- Task creation and assignment
- Email notifications for assigned tasks
- Task status tracking
- Daily task reporting
- Password management
- Responsive Bootstrap-based UI
- Frontend: HTML5, CSS3, JavaScript, Bootstrap 3
- Backend: PHP
- Database: MySQL
- Server: Apache (XAMPP)
- Email: PHPMailer with SMTP
- Ensure you have XAMPP installed and running
- Clone this repository into your
htdocsfolder - Import the database schema from
Database/tms_db.sqlinto MySQL - Configure database connection in the relevant PHP files (if needed)
- Install dependencies:
composer install - Configure email settings in
.envfile (see Configuration section) - Access the application via
http://localhost/tms
To deploy using Docker:
-
Ensure Docker and Docker Compose are installed
-
Copy
.env.exampleto.envand configure:- Database credentials
- Email settings
-
Build and start containers:
docker-compose up -d --build
-
Access the application at
http://localhost:8000 -
To stop containers:
docker-compose down
- The database will persist in a Docker volume
- First run may take time to initialize MySQL
- Check logs with
docker-compose logs
The system requires the following:
- PHP 7.0 or higher
- MySQL 5.7 or higher
- Apache web server
- Browser with JavaScript enabled
- Create
.envfile in project root with these variables:
MAIL_USERNAME=your_email@gmail.com
MAIL_PASSWORD=your_password_or_app_password
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_ENCRYPTION=TLS- For Gmail:
- Enable "Less secure apps" at https://myaccount.google.com/lesssecureapps OR
- Create an App Password if using 2FA: https://myaccount.google.com/apppasswords
tms/
├── assets/ # Static assets (CSS, JS, images)
├── classes/ # PHP classes
├── Database/ # Database schema and scripts
├── include/ # Common includes (headers, footers)
├── vendor/ # Composer dependencies (PHPMailer)
├── .env # Environment configuration
└── *.php # Main application files- Login using admin credentials (default: admin/admin123)
- Navigate through the system using the sidebar
- Create and assign tasks to users (emails will be sent automatically)
- Monitor task progress through reports
- Check PHP error logs for SMTP debug output
- Verify
.envfile exists with correct permissions - Confirm email credentials are correct
- Test with different SMTP providers if needed
(Screenshots would be added here after deployment)
(License information would be added here)