
2025 · Solo
SprintFlow
Project management with role-based access, a live dashboard, and a mini Kanban board.
JWT auth with three roles (ADMIN, MANAGER, DEVELOPER), guarded both client-side (a ProtectedRoute wrapper) and server-side (requireAuth/requireRole middleware). Projects have members, a deadline, and a computed completion percentage; tasks move between TODO/IN_PROGRESS/DONE on a mini Kanban board right on the dashboard, alongside live stats and a status-distribution chart. Ships in demo mode by default — a seeded in-memory dataset (4 demo users, 1 project, 3 tasks) — with optional PostgreSQL persistence if DATABASE_URL is set.
Features
- JWT auth with role-aware access (ADMIN/MANAGER/DEVELOPER), guarded client- and server-side
- Projects — create, list, update, delete, each with members, a deadline, and computed completion %
- Tasks — create, update, delete, comment, and drag between TODO/IN_PROGRESS/DONE on a mini Kanban board
- Admin-only user management — create, update, delete, assign roles
- Live metrics dashboard — totals, in-progress/overdue counts, task-status distribution chart
- Zero-setup demo mode (seeded in-memory data) with optional PostgreSQL persistence
Tech stack
Frontend
- React 18
- React Router 6
- TypeScript
- TailwindCSS 3
- Radix UI
- TanStack Query
- Recharts
Backend
- Express 5
- Zod validation
- JWT auth
Data
- In-memory store (default)
- PostgreSQL (optional)
Tooling
- Vite 7
- Vitest
- pnpm