Clinic EMR · Web appLive in two clinics2026

Baba Clinic: One screen per role. Nothing written in a book twice.

By Majid Ali, founder of Bytecrest · Published 22 October 2026 · Updated 22 October 2026

Baba Telehealth runs walk-in facilities in Nigeria. We turned two years of their chat history into a spec, then designed and built the web app every role in the clinic now works from: reception, nurses, doctors, the lab, the pharmacy and billing.

Client
Baba Telehealth, Nigeria
Scope
Spec, design system, web app, tests, handoff
Role
Product, UX/UI, front-end engineering
Status
Live in two clinics
Baba Clinic web app: the live reception board with patient visits moving through statuses
  • 6

    roles on one system

  • 316

    automated tests

  • 14

    build tickets from one spec

  • 6

    printed clinical documents

What shipped and what it does

  • One record per patient

    Reception registers a patient once and issues a medical record number for life, so details are no longer written into a book three times.

  • One live board

    Every visit moves through six statuses on a board the whole clinic can see: Arrived, Triaged, Ready, Consulting, Payment and Left.

  • Billing that follows the visit

    Self-pay patients pay before tests run. HMO bills are deferred to the insurer. The bill builds itself in naira.

  • Built to be changed safely

    316 automated tests, unit and end-to-end, and 14 build tickets cut from one written spec.

This lists what we delivered. It is not a set of usage figures.

where it started

The problem

Patients were registered, triaged and billed on paper and in WhatsApp threads. The same details were written into a book at reception, again at triage, and again at the pharmacy.

The brief lived in two years of chat messages between the clinic team and their developers. Nothing had been written down as one plan, so every new feature started with an argument about what had been agreed.

Reception schedule and live board with a new patient record number issued

Chapter 01 · Reception

Reception: book a visit and put it on the board

Reception registers a patient once and issues a medical record number for life. Appointments go into clash-proof slots with a doctor, nurse or midwife, and checking a patient in puts their visit on a live board the whole clinic can see.

Every visit moves through six statuses, Arrived, Triaged, Ready, Consulting, Payment and Left, always shown with a letter, a word and a colour, so nobody has to rely on colour alone.

Triage screen with vitals cards flagged HIGH and a critical priority tag

Chapter 02 · Triage

Triage: flags in words, not just colour

Nurses record vitals, a urine dipstick and a priority. BMI works itself out, and out-of-range values say HIGH or LOW in words, so nothing depends on seeing red.

A critical patient jumps to the top of the doctor’s queue straight away. The queue ranks by priority, then appointment time, then arrival.

Consultation workspace with patient history and the no-doctor mode card

Chapter 03 · Consultation

Consultation: the nurse’s notes and every past visit

The doctor’s workspace shows the triage notes and the patient’s full history on one screen. Drafts save themselves, prescriptions are written line by line, and imaging prints as an external request.

When no doctor is on site, the clinic switches to no-doctor mode: nurses can consult, refer, or book a doctor follow-up into the next free slot.

Billing screen with an awaiting payment total of ₦7,000 and printed documents

Chapter 04 · Lab, pharmacy & billing

Lab, pharmacy and billing: pay before the test

Self-pay patients pay at the lab before tests run, and HMO bills are deferred to the insurer, AXA Mansard for example. When the work is done, the visit moves itself to Payment and the bill builds itself in naira.

Six clinical documents print on the clinic letterhead: receipts, prescriptions, lab requests, referrals and more.

what we handed over

Delivered

  • A written spec distilled from a two-year client chat
  • Domain model and four architecture decision records
  • 14 build tickets
  • Design system and every screen
  • Production React app with PIN sign-in
  • 316 automated tests (unit and end-to-end)
  • Handoff documentation

Built with

  • React 19
  • TypeScript
  • Tailwind CSS
  • TanStack Query
  • React Router
  • Radix UI
  • Vitest
  • Playwright e2e

Services used

Next project

All work

free, 20 minutes, no slides

Tell us the idea. We’ll plan it with you.

Majid will ask what you want to build, then send a written plan with a fixed price and a start date. If we’re not the right team, he’ll say so.