Design and buildHealthcare / SaaS · 2026
Pulse Clinic
A full clinic management system with six roles, 53 screens, and 61 tables, where the safety rules are pure, tested modules.

Our own build, not client work
Pulse Clinic is what we build when nobody is holding the brief: a complete clinic management system covering appointments, consultations, prescribing, laboratory, pharmacy, billing, analytics, and a patient portal. Designed and built end to end by Confidency.
Six roles (admin, doctor, receptionist, lab, pharmacist, patient), 53 screens, 61 tables, all behind row-level security that’s proven against real Postgres rather than asserted in a README.

The safety rules are the point
Most clinic templates are screens. Pulse Clinic is mostly the reasoning underneath them, eleven pure, dependency-free modules that hold the decisions that matter, each one testable in isolation:
Drug allergy checking catches amoxicillin prescribed to a penicillin-allergic patient, a class match, not a name match, because those words share no letters. It warns and requires a written reason rather than blocking, because software that refuses gets worked around.
Result flagging picks the reference range by sex and age before comparing, so 13 g/dL of haemoglobin is normal for a woman and low for a man. No range on file means no flag, never a guess.
Batch dispensing picks stock first-expiry-first-out and flags a batch that’s in date today but expires partway through a 30-day course. Nothing else in a clinic system knows both those facts at once.
Money parity ports the database’s invoice arithmetic into the interface and then proves they agree by running the same rows through the real migrations. It caught a schema bug where insurance-settled invoices stayed “partially paid” forever.
The statistics engine refuses to mislead: medians with a 90th percentile instead of means, no percentage without its denominator, and under ten observations it says “too few to judge” instead of publishing noise a manager would act on.

Half the AI features use no AI
The assistant explains lab results with a curated glossary plus the flagging engine’s verdict, a template can’t invent a number; a model can, fluently. Triage is an explicit rule table where red flags cannot be talked down. Only note drafting uses a model, fenced by redaction on the way out and grounding checks on the way back: every number in a draft must appear in the source, and nothing generated becomes clinical fact until a person accepts it.

Built the way we build for clients
The same discipline we bring to client products: a token-driven design system, dev-ready structure, and evidence over adjectives: 358 unit tests, 200 RLS assertions, 15 money-parity checks.
What this project involved