Back to Projects
LAUNCHED

Leave Manager

Team leave planning platform with role-based dashboards and scheduling constraints.

Next.js 15TypeScriptMongoDBJWTTailwind CSSPlaywright
Live Demo

// problem

Business Problem

Team leave planning breaks operations when approvals, shift schedules, and member availability are not coordinated in one system. Leaders lacked visibility; members lacked transparency.

// constraints

Constraints

  • Separate leader/member flows with strict role-based access control
  • Calendar and request views that reflect real shift scheduling constraints
  • Accurate leave balance, carryover, and year-end projection visibility

// architecture

Architecture

frontend

Next.js 15 App Router with role-aware dashboards, analytics, calendar, and profile pages

backend

Next.js API Routes for leave management logic — balances, requests, team constraints, SSE real-time updates

database

MongoDB Atlas with indexed leave records, user/team data, and audit logs

deployment

Live production deployment on Vercel with environment-managed secrets

Scalability Strategy

  • Structured dashboard and analytics summaries to handle growing request history
  • Calendar filters for subgroup visibility and operational planning
  • Modular route-based UI for progressive feature expansion
  • Server-Sent Events (SSE) with polling fallback for real-time team updates

Security Decisions

  • JWT authentication with HTTP-only cookies and bcrypt password hashing
  • Role-scoped navigation and API access — leaders vs members
  • Rate limiting, Helmet security headers, Joi schema validation on all endpoints
  • Team isolation — users can only access their own team data

Target Outcomes

  • Shipped a live leave operations product with real member analytics and year-end projections
  • Delivered practical planning features beyond basic leave request forms
  • Enabled transparent leave balance and carryover visibility per team member
  • Comprehensive E2E test coverage with Playwright