KGIndex

India --:--:-- --

All work

06 · Healthcare software · team of six

Wait Zero

Live tokens, emergency interrupts and offline-first booking for clinics on unreliable networks.

When
2026
Role
Lead developer and architect, team of six
Built with
Node, Express, MySQL, React, Flutter, SQLite
Source
KrishG7/smart-clinic-booking ↗

See it

Patient home with a live token ring, minutes of wait and people in line
The patient sees their placeA live token, the minutes of estimated wait and how many people are ahead of you. Demo data.
Doctor search with specialities, ratings, fees and a Book Token button
Find a doctor and bookSearch by name or speciality, see each doctor’s rating, experience, daily limit and fee, then book a token. The booking form takes a date, a time, a visit type (regular, follow-up or emergency) and a symptoms note.
Doctor queue console showing the patient being served and the waiting list with estimated waits
The doctor runs the queueThe doctor sees who is being served and who is waiting, with every estimated wait. Call Next moves the next token to in progress, and the waits behind it are recomputed.

The problem

Clinics lose hours to unmanaged queues and patchy internet. A patient takes a slip of paper and has no idea whether they are next or an hour away.

Numbers, with dates

  • 115backend tests passing (database mocked); 2 web and 4 Flutter tests as wellrun 28 Oct 2026
  • 258commits across the team, March to May 2026; mine are about a quartergit history
  • 6 peopleone team, three user roles, one live queue shared by web and mobileproject README

How it works

  1. 01 · patient

    The patient sees their place

    A live token, minutes of estimated wait and how many people are ahead.

  2. 02 · doctor

    The doctor runs the queue

    Call next moves a token to in progress and every wait behind it is recomputed.

  3. 03 · admin

    The admin keeps it safe

    New doctors wait for approval; every account and action is recorded.

  4. 04 · sync

    The phone works offline

    Bookings are stored in SQLite and pushed to the server when the connection returns.

What I built

  • The architecture: a Node and MySQL API with JWT and OTP sign-in, role checks (patient, doctor, staff, admin), audit logs and PII encryption.
  • A queue where booking creates a token, calling the next patient recalculates every wait, and an emergency token can jump to the front within a daily limit.
  • Three views of one system: a patient dashboard, a doctor queue console, and an admin view that approves new doctors.
  • An offline-first Flutter app that saves bookings locally and syncs them when the network returns.

Team

Built with the six-person course team. The repository credits everyone who worked on it.