Under the hood
How Health is built
Health is a real, deployed product, not a prototype. A family uses it for real every day. Here's what's under the hood.
Stack
- Next.js 14 (App Router) and React, styled with Tailwind CSS
- Postgres on Neon, accessed through the Drizzle ORM
- Authentication handled by Kinde
- Deployed on Vercel
Architecture
- Multi-tenant by design: every record is scoped to a household and a user
- Each API route runs through a shared server-side auth wrapper, so the per-user filter is structurally hard to forget
- SWR on the client with optimistic updates, so taps feel instant
- Reads and writes are separated cleanly for the read-only viewing mode
Security
- Every API route is gated server-side; unauthenticated calls get a 401
- Data is filtered per tenant on each query, so households never see each other's data
- All user input is validated and length-clamped before it touches the database
- Queries go through a parameterised ORM, never hand-built SQL strings
- Secrets stay server-side; the access gate fails closed if misconfigured
Accessibility
- Keyboard navigable, with a visible focus ring on every interactive element
- A skip-to-content link for keyboard and screen-reader users
- Honours prefers-reduced-motion: animations stand down when asked
- Form controls are labelled; colour is never the only signal
Privacy
- Eight per-person visibility controls decide what the family can see
- Your journal is always private and never shared
- Your data is yours: never sold, never used to train AI
See it in action
The fastest way to judge a build is to use it. The demo needs no sign-up.
Try the demo