Skip to content

cjpanda/TimeTrackerPro

Repository files navigation

⏱️ TimeTrack Pro

A production-ready full-stack time tracking and workforce management system built with modern web technologies.


🚀 Overview

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.


✨ Features

🔐 Authentication & Security

  • Role-based authentication (Admin / Employee)
  • Secure password reset flow with hashed tokens and expiry
  • Server-side validation using Zod
  • Protection against token reuse

👤 Account Management

  • Admin profile management (name, email, avatar)
  • Image upload with UploadThing
  • Optimized image handling with Next.js

⏳ Time Tracking

  • Employees can log work sessions
  • Admins can approve or review sessions
  • Status-based filtering (Approved / Pending)

📊 Reports & Insights

  • Dynamic reporting dashboard
  • Filter by:
    • Date range
    • Employee
    • Status
  • Data visualization (charts)
  • CSV export for business reporting

🎨 UI/UX

  • Responsive design
  • Dark mode support
  • Accessible UI components (ShadCN)
  • Toast notifications for feedback

🏗️ Tech Stack

Frontend

  • Next.js (App Router)
  • React
  • TypeScript
  • Tailwind CSS
  • ShadCN UI

Backend

  • Next.js Server Actions
  • Prisma ORM
  • PostgreSQL (Neon)

Infrastructure

  • Vercel (Deployment)
  • Docker (Local development)
  • UploadThing (File uploads)

🧠 Architecture Highlights

  • 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

📦 Installation

git clone https://github.com/your-username/time-track-pro.git
cd time-track-pro
npm install

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages