Vivek
Featured project
Clinic Queue Live
Reception needs to add people to a line and call them one by one. Patients in the waiting area need to know who's inside and how long they'll wait — without refreshing the page. Process One Node server holds the queue in memory. Every change broadcasts the same state to all connected browsers via Socket.io. No database for the hackathon scope — keeps it fast and simple. Two HTML pages share one backend. Reception writes; waiting room reads (+ checks own token). ## Wait time (real data, not hardcoded) ``` tokens ahead = position in queue (0 if you're with the doctor) wait minutes = tokens ahead × avgMinutes ``` `avgMinutes` is set by reception and stored on the server. When reception changes it, everyone's estimate updates on the next event. ## Reception UX choices - Big "Call next" button — main action, hard to miss - Enter key adds patient — fast during rush - Empty name blocked on client + server - Reset needs confirm — avoids accidental wipe - Avg time clamped 1– Results Built a live clinic token queue with two synced screens. Reception adds patients and calls tokens; the waiting room shows who’s inside, tokens ahead, and estimated wait from real queue data. Updates are instant via Socket.io — no refresh needed. Reflection built two focused screens instead of one heavy app, used plain Node + Socket.io for instant sync, and calculated wait time from real queue position and reception-set avg time — not hardcoded values. Kept the stack minimal so it’s fast to run and easy to demo.