A working prototype, not a pitch deck

Run the whole clinic on records the patient owns.

ProVaidya takes a patient from the booking call to the discharge summary — reception, queue, consultation, prescription, labs, billing. Every step lands on a FHIR server you choose, as a standard resource. There is no export button, because there is nothing to export from.

Speaks:HL7 FHIR R4ABDM-alignedSNOMED CTLOINCICD-11 TM2NAMASTE
Today's queue
Live from the FHIR server · Appointment + Encounter
Connected
RK
Rajesh Kumar
M · 54 · Hypertension review
In consult
PS
Priya Sharma
F · 38 · Post-op follow-up
Checked in
AM
Anand Mehta
M · 62 · Diabetes review
Arrived
SK
Sneha Kulkarni
F · 29 · New patient
Booked
Appointment
booked
Encounter
in progress
Provenance
on every write
A day in the clinic

One patient, start to finish.

Every step below is a real workflow in the app — and the FHIR resource it writes while the staff just get on with their day.

  1. 01
    Book
    Appointment
  2. 02
    Arrive & check in
    Appointment.status
  3. 03
    Start the visit
    Encounter
  4. 04
    Record vitals
    Observation
  5. 05
    Note & diagnose
    Composition · Condition
  6. 06
    Prescribe
    MedicationRequest
  7. 07
    Discharge summary
    PDF · Provenance
  8. 08
    Bill
    Invoice
Live in the prototype

Everything that already works.

No mockups and no wireframes — all of it round-trips against a real FHIR server today.

Front desk

The half of a clinic that software usually ignores.

  • Schedule with an agenda view and a day-grid calendar — 30-minute slots, 8am to 8pm, book by clicking an empty one
  • Queue: arrived and checked-in patients sit at the top of Today, with a Start visit button that hands off to the consulting room
  • Check-in links the Appointment to the Encounter and flips it to fulfilled in the same action

The consultation

Everything the clinician touches between hello and goodbye.

  • Patient chart with vitals, conditions, encounters, medications, labs, allergies, documents and a timeline — all read live from FHIR
  • Encounters you start, record vitals on, and finish (ambulatory, home health, virtual)
  • Vitals dialog with HR, BP, temperature, RR, SpO₂, weight, height, auto-computed BMI and HbA1c — and per-practitioner presets

Medicines & labs

From the prescription to whether the patient actually took it.

  • Structured prescribing — dose, frequency and duration composed into a readable Sig, with a curated quick-pick list
  • Pharmacy view: the whole clinic's MedicationRequests, grouped by status
  • Lab view: clinic-wide Observations with abnormal-flag chips for HbA1c and eGFR

Money & paperwork

The unglamorous parts a clinic can't run without.

  • Invoices with Total / Paid / Draft / Cancelled counters, create, mark paid, cancel
  • Discharge summary PDF for any finished encounter — demographics, vitals snapshot, diagnoses, prescriptions
  • Document uploads as DocumentReference + Binary: lab PDFs, scans, ABHA cards, one-click download

Governance

Built for a clinic that will one day be audited.

  • Five roles — admin, receptionist, nurse, doctor, therapist — with role-gated navigation and role-gated clinical writes
  • Audit log: a reverse-chronological Provenance table, clinic-wide for admins, own-actions for everyone else
  • Provenance written on every successful create and edit, with a per-patient edit-history popover

Assistance

Grounded in the record. Never inventing, never auto-saving.

  • Pre-visit clinical summary generated from the patient's own FHIR data, warmed in the queue so it's ready before you open the chart
  • One-click SOAP draft that fills Subjective and Assessment for the clinician to review and edit
  • Care Gaps engine: diabetes (HbA1c), hypertension (BP), CKD (eGFR) and polypharmacy, checked against real LOINC codes and published thresholds
How it's built

Built like infrastructure.

The parts that decide whether an EHR survives its second year.

The browser never holds a FHIR token

Every read and write goes through a JWT-validated edge function with a strict per-path whitelist. The authorisation boundary is one file, on purpose — you can review it in an afternoon.

A closed read-write loop

Patient, Practitioner, Encounter, Observation, Condition, Composition, Appointment, Invoice and Provenance all round-trip. Edits merge per-field, so anything another system wrote to the resource survives untouched.

Concurrency and attribution on every write

If-Match against meta.versionId, with a graceful reload when a version has moved under you. Every successful write files a Provenance resource naming the practitioner who made it.

We run our own FHIR server

A hardened VPS running HAPI FHIR, seeded with Synthea-generated synthetic populations — so the demo works against a realistic cohort rather than a handful of toy fixtures.

Cross-server by construction

Practitioner identity resolves and caches per server. Switch between our HAPI, Medblocks, or your own from the top bar and the workflow follows you. There is no ProVaidya database holding your clinical data hostage.

Standards, not exports

There is no proprietary schema underneath waiting to be converted. What the clinic records is already a FHIR resource, coded to SNOMED CT, LOINC, ICD-11 or NAMASTE at the point of capture.

The thesis

Health records, unbundled.

Because clinical data should not be tethered to whichever app happened to capture it.

The record belongs to the patient

ABHA-anchored, consented per access, portable across providers. ProVaidya is never the silo — it reads and writes to the patient's record wherever that record already lives.

The app is only a layer

FHIR-native at every edge. Swap servers, switch clinics, change software — the shape of the data doesn't move. We chose interoperability before features, not after.

Low friction, then longitudinal data

When capture is fast and access is fair, a patient's record accumulates over years instead of scattering into fragments. That continuity is what actually changes outcomes.

Terminology

Coded the way your practice actually works.

Most clinics want SNOMED CT and ICD-11, and that's the default — pick a diagnosis and the biomedical codes come with it. Practices that also need traditional-medicine coding get NAMASTE and ICD-11 TM2 written onto the same Condition in one round-trip, with the term the clinician actually chose flagged as theirs and the rest recorded as derived.

It's one searchable field in the diagnosis dialog. If you don't need it, you'll never see it — the same is true of the optional Ayurveda examination notes. Nothing about the modern-medicine workflow changes.

The NAMASTE terminology is loaded from a public export and is implemented, not yet clinically ratified — it should be re-validated against the official NAMASTE portal before use in care.

460
NAMASTE terms wired in
323
also carrying an ICD-11 biomedicine code
3
code systems on a single diagnosis
One diagnosis, three systems
Osteoarthritis
NAMASTE · AAE-16
ICD-11 TM2 · SP12
ICD-11 biomedicine · FA0Z
Roadmap

Where this goes next.

Ordered by what a clinic asks for first.

Next

Voice scribe for the consulting room

Dictation that streams into the SOAP editor and proposes structured Conditions and prescriptions for the doctor to approve. English or vernacular. Builds on the AI draft that's already there.

Next

Billing, deeper

Line items, GST, insurance flows and patient receipts on top of the invoice list — the reception-facing surface that turns this into something a clinic runs its accounts on.

Next

Patient relationship management

Recall, follow-up nudges and a patient portal built for practice growth rather than engagement metrics. SMS through DLT-registered templates.

Later

Full ABDM participation

HIU/HIP registration, consent artefact flows and health-record sharing across providers — so the patient's record genuinely travels with them, not just within one clinic.

Later

Patient-facing companions

Apps riding the same FHIR record: pregnancy care, diabetes and lifestyle, medicine adherence, teleconsultation. One record, many front doors — the adherence loop already proves the pattern.

Later

Records on the go

A physician companion for house visits, palliative care and field work. Same proxy boundary, mobile-first capture.

How this sustains itself

Free for the public. Paid where it grows a practice.

A clinic system has to make commercial sense before it can make clinical sense. Here's the shape of it.

Free where it should be free

Patient-facing apps cost the patient nothing, and a small practice can run its whole day on the free tier. Records are a public good before they're a product.

Paid where it earns its keep

The premium tier is the stuff that gives a practitioner their evening back — the AI scribe, patient recall, scheduling at scale, billing, vernacular dictation.

Bring your own AI subscription

The voice receptionist runs on the clinic's own provider account. We don't resell tokens or mark up inference, so our costs don't scale with your call volume.

Nothing to migrate away from

The clinical data is already standard FHIR on a server of your choosing. Switching costs are near zero — which is exactly why we have to keep being worth paying for.

Open the prototype. Poke around.

Pick a FHIR server, browse a real synthetic cohort, book a slot, start a visit. Everything you do writes back to the server you picked.