Cluster 4 Cleaning Roster is an automated duty scheduling and tracking application engineered for collaborative learning workspaces, developer clusters, and educational cohorts. It replaces error-prone spreadsheets and manual task tracking with a synchronized timeline, live reactive countdown timers, and clear visual state management.
- 🔄 Deterministic Rotation Engine: Automatically rotates duty across 10 tables on bi-weekly cleaning sessions (every Monday and Thursday at 00:00 local time) without manual intervention.
- ⏱️ Sub-Second Reactive Countdown: Live sticky header displays days, hours, minutes, and seconds remaining until the next scheduled cleaning session.
- 🏷️ Dynamic Table Status State Machine: Tables are automatically categorized and badged with real-time states:
onDuty: Table currently active for cleaning duty.next: Upcoming table in the queue for the next scheduled session.done: Completed tables from the current rotation cycle.upcoming: Tables queued for future sessions.
- ⚡ Zero-Latency Edge Architecture: Powered by TanStack Start and TanStack Router, optimized for instant hydration and serverless edge delivery via Cloudflare Workers.
- 🎨 Modern Glassmorphic UI: Polished Tailwind CSS 4 design featuring accessible Radix UI primitives, Lucide icons, and responsive mobile layout.
| Layer | Technologies |
|---|---|
| Framework | TanStack Start (Full-stack React Framework) & TanStack Router |
| Frontend | React 19, TypeScript 5.8 |
| Styling & UI | Tailwind CSS 4, Radix UI primitives, Lucide Icons, Embla Carousel |
| State & Date Utils | React Hooks (useNow, useMemo), date-fns, Zod |
| Build & Edge Runtime | Vite 7, Wrangler, Cloudflare Workers, Bun |
- Node.js 20+ or Bun installed.
git clone https://github.com/Podugboch/Cluster-4-Cleaning-Roster.git
cd Cluster-4-Cleaning-Roster
bun install # or npm installbun dev # or npm run devOpen http://localhost:5173 in your browser.
bun run build # or npm run buildnpx wrangler deployMIT License • © 2026 Patrick Sean Odugboche