Group project for our Software engineering class. -Nimrod Kobia 168357 -Louis Ngatia 191603 -Emmanuel Kipkirui 184697 -Sean Muthomi 190119 -Alex Muriithi 177298 -Brian Kipngeno 168049 -Brian Kipkoech 172431 -Ryan Ngugi 192561
- PHP 8.0+ installed
- Neon PostgreSQL database (cloud)
- Gmail account (for email reminders)
- VS Code with Live Server extension
Edit Backend/config.php with your Neon PostgreSQL credentials:
'db' => [
'host' => 'your-neon-host.aws.neon.tech',
'dbname' => 'your-database-name',
'user' => 'your-username',
'pass' => 'your-password'
]cd Backend
php run_migration.php✅ This adds reminder tracking columns to your Neon database.
Edit Backend/config.php:
'smtp' => [
'host' => 'smtp.gmail.com',
'email' => 'your-email@gmail.com',
'password' => 'your-app-password', // Get from Google Account Settings
'port' => 587
]Get Gmail App Password:
- Go to Google Account Security
- Enable 2-Step Verification (if not enabled)
- Go to App Passwords
- Generate password for "Mail"
- Copy the 16-character password
Run as Administrator:
- Right-click
Backend\setup_task_scheduler.bat - Click "Run as administrator"
- Wait for "SUCCESS!" message
✅ Reminders will now run automatically every 5 minutes in the background!
cd Backend
php -S localhost:8000✅ Keep this terminal open while developing.
Option A - VS Code Live Server (Recommended):
- Open
frontend/index.htmlin VS Code - Click "Go Live" button (bottom right)
- Opens at
http://127.0.0.1:5501
Option B - Python HTTP Server:
cd frontend
python -m http.server 5501Option C - Node.js http-server:
cd frontend
npx http-server -p 5501- Frontend: http://127.0.0.1:5501
- Backend API: http://localhost:8000
# Should return JSON with database info
curl http://localhost:8000/Open browser: http://127.0.0.1:5501
# View the log file
type Backend\logs\reminders.log
# Or check Task Scheduler status
schtasks /query /tn "Taskly Automated Reminders"Press Ctrl + C in the terminal running php -S localhost:8000
- Live Server: Click "Port: 5501" in VS Code status bar
- Python/Node: Press
Ctrl + Cin the terminal
# Disable the scheduled task
schtasks /change /tn "Taskly Automated Reminders" /disable
# Or delete it completely
schtasks /delete /tn "Taskly Automated Reminders" /fTaskly can automatically send email reminders 24 hours before and 10 minutes before task deadlines!
✅ Works with Neon PostgreSQL (Cloud Database)
-
Run Database Migration (Required for Neon):
cd Backend php run_migration.phpThis adds reminder tracking columns to your Neon PostgreSQL database.
-
Configure Email in
config.php:'smtp' => [ 'host' => 'smtp.gmail.com', 'email' => 'your-email@gmail.com', 'password' => 'your-app-password', // Get from Google Account 'port' => 587 ]
-
Set Up Automated Task (Run as Administrator):
# Double-click setup_task_scheduler.bat (Run as Administrator) # OR manually: cd Backend setup_task_scheduler.bat
✅ Done! Reminders will now send automatically every 5 minutes by querying your Neon database.
📖 Detailed instructions:
- General:
Backend/REMINDERS_SETUP.md - Neon PostgreSQL:
Backend/NEON_SETUP_GUIDE.md
- ✅ Task management with priorities and due dates
- ✅ Calendar view with FullCalendar integration
- ✅ Share tasks with multiple people
- ✅ Dark/Light theme toggle
- ✅ Automated email reminders (24h & 10min before deadline)
- ✅ Priority scoring system
- ✅ Real-time notifications
- ✅ Task statistics and analytics