← WORKSHEET 06 / 072024LIVE

National Path Labs

A home-collection diagnostics platform for a clinical lab. Patients book a test or package, a phlebotomist is dispatched to their address to draw the samples, and the lab processes them, generates the report, and notifies the patient the moment it is ready. The whole journey, booking to result, is tracked in one place.

Role
Full-Stack
Stack
Nuxt · Laravel
Data
MySQL · Docker
Flow
Book → collect → report
Client
National Path Labs, Nepal
Timeline
2024

Door → report

booking to result, one system

CONTEXT

A clinical laboratory founded in Butwal in 2013, now running 14 laboratories and more than 150 test centres across Nepal, processing on the order of 15,000 tests a day for 1,200+ patients.

The platform digitises the home-collection journey. A patient books a test or a health package, a phlebotomist is dispatched to their address to draw the samples, the lab processes them, and the report is generated and made available to download as soon as it is ready.

THE HARD PART

The journey crosses four hands, patient to phlebotomist to laboratory to report, and every handoff is somewhere a thing gets lost. The failure mode is not a crash. It is a phone call asking where a result is.

The fix is to treat booking, collection, processing and report as one tracked chain, rather than four systems that happen to share a patient name.

WHAT I BUILT

  • Patient booking for individual tests and health packages.
  • Phlebotomist dispatch to the patient’s address.
  • Sample and test tracking through the laboratory.
  • Automated PDF report generation, patient notification, and download from the portal.
  • Nuxt and Laravel on MySQL, containerised with Docker.

REVISIONS · THE CALLS I MADE

A

Booking and lab work share one record

When the lab’s state and the patient’s view live in separate records, they drift, and answering "where is my report" falls to a human on a phone. One chain means the patient view is the lab state.

B

Reports generate from the booking

The report is the thing the patient is actually waiting for. Tying generation to the booking makes notification and re-download automatic, instead of depending on somebody remembering to attach a file.

C

Docker, for parity with the lab’s environment

A diagnostics lab’s servers are not a developer laptop. Shipping the runtime alongside the application removes the whole class of bug that only appears on their machine.

OUTCOME

  • Report turnaround cut from 48 hours to under 6.
  • Booking, collection, processing and delivery tracked as a single chain.