A production-ready full-stack time tracking and workforce management system built with modern web technologies.
TimeTrack Pro is a SaaS-style application designed to help organizations track employee work sessions, manage approvals, and generate actionable reports.
The system supports role-based access (Admin & Employee) and includes secure authentication, reporting dashboards, and cloud-based file uploads.
- Role-based authentication (Admin / Employee)
- Secure password reset flow with hashed tokens and expiry
- Server-side validation using Zod
- Protection against token reuse
- Admin profile management (name, email, avatar)
- Image upload with UploadThing
- Optimized image handling with Next.js
- Employees can log work sessions
- Admins can approve or review sessions
- Status-based filtering (Approved / Pending)
- Dynamic reporting dashboard
- Filter by:
- Date range
- Employee
- Status
- Data visualization (charts)
- CSV export for business reporting
- Responsive design
- Dark mode support
- Accessible UI components (ShadCN)
- Toast notifications for feedback
- Next.js (App Router)
- React
- TypeScript
- Tailwind CSS
- ShadCN UI
- Next.js Server Actions
- Prisma ORM
- PostgreSQL (Neon)
- Vercel (Deployment)
- Docker (Local development)
- UploadThing (File uploads)
- Type-safe session handling using discriminated unions (Admin vs Employee)
- Centralized action response pattern for consistent error handling
- Secure token workflow for password reset (hashed + expiring tokens)
- Separation of concerns between server and client components
- Reusable mappers to prevent leaking sensitive database fields
git clone https://github.com/your-username/time-track-pro.git
cd time-track-pro
npm install