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