Dharan Kandasamy
Featured project
Queue Cure — Real-Time Clinic Queue Management System
76% of India's clinics run on paper token slips. Patients wait 2–3 hours with zero visibility into when they'll be called. The real problem isn't the wait — it's the uncertainty. A patient who knows their ETA sits calmly. One who doesn't crowds the front desk constantly. Queue Cure fixes this with a live receptionist dashboard and a real-time patient display. No app, no refresh, no shouting. Process I broke the problem into two user needs: receptionist speed and patient clarity. For the receptionist — one-tap actions, no confirmation dialogs, always-visible queue. For the patient display — one big token number, one live countdown, readable from across the room. I chose Socket.io over polling so updates push instantly on 'Call Next'. I added a server-side mutex to prevent two tabs dequeuing the same patient simultaneously. For ETA, I skipped the obvious wrong answer (tokens × fixed average). Instead the server tracks a rolling average of actual completed consults and subtracts time already elapsed — accuracy improves as the day goes on. Results Two-screen live sync under 200ms — patient display updates before the receptionist's hand leaves the mouse. ETA improves throughout the day as rolling average builds from real data, not a hardcoded estimate. Handles no-shows, priority patients, and mid-session time changes without losing queue state. Patient display needs zero setup — just a URL on any screen in the waiting room. Reflection Add a personal QR code so patients get their own live link and can step outside without missing their turn. Swap in-memory state for Redis so the queue survives a server restart — a crash right now loses everything. Add a doctor-side 'Ready' button so the call signal comes directly from the doctor, not a verbal cue through the receptionist. That last human link is the slowest part of the flow.