HealthLog
HealthLog started with a small annoyance that wouldn't go away: my own health data was scattered across half a dozen apps and clouds I didn't control. The smart scale wanted one account, the blood-pressure cuff another, and the wearable hid my own numbers behind a subscription. As someone who spends his days arguing for data sovereignty and secure-by-design systems, watching my most personal data quietly drift onto other people's servers felt wrong — so I built the thing I wished already existed.

It is a self-hosted health-tracking app — a PWA plus a native iOS client — that comes up with a single
docker compose up on a NAS, homelab, or small VPS. Weight, blood pressure, pulse, blood glucose, body
composition, sleep, mood, cycle, and medications all land on one timeline, synced from the devices I already own:
Withings and WHOOP over OAuth, an Apple Health export to fold in years of history, and the iOS app streaming
HealthKit live. When two wearables disagree about the same morning, a per-metric source priority decides which
reading is the canonical one.
The part I'm proudest of is the medication tracking, because it refuses to lie. Schedules can be as awkward as real life — weekly injections, weekday-only, intervals, as-needed — and every dose slot reads honestly as taken, late, skipped, or missed. The compliance rate is computed from that exact same ledger, so the percentage can never quietly disagree with the timeline in front of you. On top sits an AI layer — a daily briefing, correlations, a coach grounded in your own measurements — but you bring your own OpenAI or Anthropic key, or point it at a local model, so nothing has to leave your network just to form an opinion about your sleep.
And because health data is meant to be shared with a doctor, not only admired in a dashboard, HealthLog generates a clinician report as a PDF, speaks read-only HL7 FHIR R4, and hands out scoped, time-limited links you revoke after the appointment. Everything is encrypted at rest with AES-256-GCM, login is a passkey, and there is no third-party tracking anywhere — privacy by construction, rather than a setting you have to remember to switch on.
In the end HealthLog is the same instinct as the old washing machine I once wired up to a power meter: take something real and a little messy — here, my own body — and bring data, technology, and a bit of discipline to it without handing anyone else the keys. As a CIO I make that argument for an entire administration every day; this is what it looks like when I hold myself to the same standard.
Try a live install (sign in with demo / demo123demo123), or dig into the details:
healthlog.dev ·
live demo ·
documentation ·
source on GitHub ·
iOS TestFlight.