A modern productivity platform for developers, students, and self-learners to plan, track, and analyze their learning journey.
Live Demo • Repository • Issues
TrackMyProgress helps learners stay organized and accountable by providing structured study plans, session tracking, productivity analytics, and a complete learning timeline. Whether preparing for interviews, learning development, practicing DSA, or managing academic goals, this platform transforms daily learning into measurable progress.
Core principle: Consistency creates measurable growth.
- Dashboard — Centralized activity overview, progress summaries, and quick access to active plans
- Daily Planning — Create structured schedules, organize goals by topic/priority, allocate focused sessions
- Journey Timeline — Maintain chronological learning records, save milestones and achievements
- Analytics — Visual productivity tracking, trend analysis, and performance insights
- Authentication — Secure authentication with protected routes and session-based access control
- Email Integration — SMTP-based feedback and notifications (Gmail, Outlook, SendGrid support)
| Layer | Technologies |
|---|---|
| Frontend | React 18, TypeScript, Vite, TailwindCSS, Radix UI |
| Backend | FastAPI (Python 3.9+) |
| State Management | React Context API + React Router v7 |
| Deployment | Vercel (Frontend), Render/Railway (Backend) |
- Node.js 18+, npm or pnpm
- Python 3.9+
- Git
# Clone repository
git clone https://github.com/manishpatel00/TrackMyProgress.git
cd TrackMyProgress
# Install dependencies
npm install
cd server && python3 -m pip install -r requirements.txt && cd ..Create .env in root:
VITE_API_BASE=http://localhost:4000
PORT=4000
SMTP_USER=your-email@gmail.com
SMTP_PASSWORD=your-app-password
ADMIN_EMAIL=your-email@gmail.com# Backend (from root)
cd server && python3 -m uvicorn ai_server:app --reload
# Frontend (in another terminal, from root)
npm run devAccess: Frontend: http://localhost:5173 | Backend API: http://localhost:4000 | Docs: http://localhost:4000/docs
trackmyprogress/
├── src/
│ ├── components/ (layout, ui, forms, analytics)
│ ├── pages/ (Dashboard, DailyPlan, JourneyLog, Stats, Login)
│ ├── contexts/, hooks/, lib/, types/, styles/
├── server/
│ ├── ai_server.py, email_service.py, requirements.txt
├── package.json, vite.config.ts, tsconfig.json, tailwind.config.js
Frontend (Vercel):
git add . && git commit -m "Deploy" && git push origin mainConfigure: Framework: Vite | Build: npm run build | Output: dist
Backend (Render):
- Build:
pip install -r requirements.txt - Start:
gunicorn -w 4 -b 0.0.0.0:$PORT server.ai_server:app
- Phase 1: Core features (Dashboard, Daily Planner, Journey Logs, Analytics, Auth)
- Phase 2: Productivity enhancements (Goal tracking, Calendar, Pomodoro timer, Advanced analytics)
- Phase 3: Collaboration (Public profiles, Study groups, Team collaboration, Leaderboards)
- Phase 4: Production hardening (PostgreSQL, Unit tests, CI/CD, Monitoring, OAuth)
- Environment-based secrets management
- Protected API architecture with input validation
- Safe error handling & CORS configuration
- Secure SMTP integration
- Fork the repository
- Create feature branch:
git checkout -b feat/your-feature - Commit changes:
git commit -m "feat: add feature" - Push branch:
git push origin feat/your-feature - Open a Pull Request
Licensed under the MIT License © 2026 Manish Patel
- GitHub: https://github.com/manishpatel00
- Project: https://trackmyprogress.vercel.app
If you find this project useful, please star ⭐ the repository and consider contributing!