I became a father 11 days ago. By day 4, I was frustrated with the state of baby-tracking apps. Almost every popular option requires an account, syncs sensitive health data to a proprietary cloud, and monetizes through data-harvesting or aggressive subscriptions.
As a developer and a "privacy freak," I didn't want my child’s data on someone else's server. So, I spent my "paternity leave" build-phase (the nap windows) creating Baby Vault.
The Tech Stack:
Frontend: Vite + React + TypeScript.
Storage: Dexie.js (IndexedDB). Data stays in the browser and never touches a backend.
UI: shadcn/ui with a heavy focus on "one-handed" mobile usability.
Deployment: Self-hosted on my own Coolify instance. (considering adding as a service)
Why I built it this way: Most parents just need to answer three questions: "When did they last eat?", "Are they gaining weight?", and "How do I show this to a doctor?"
I’ve implemented features that I felt were missing from the "big" apps:
The Golden Hour Overlap: A Gantt-style chart for multi-child households to find that elusive moment when everyone is asleep.
Medical Export: A CSS-print-optimized report for 90-second pediatrician reviews.
Witching Hour Heatmaps: Identifying patterns in evening fussiness.
Privacy/Data Sovereignty: There are no accounts. No analytics. No "Donate" button. You can export your entire database as JSON and import it elsewhere. If you "Add to Home Screen" (PWA), it works perfectly in a basement with zero signal.
moshmage•1h ago
As a developer and a "privacy freak," I didn't want my child’s data on someone else's server. So, I spent my "paternity leave" build-phase (the nap windows) creating Baby Vault.
The Tech Stack:
Why I built it this way: Most parents just need to answer three questions: "When did they last eat?", "Are they gaining weight?", and "How do I show this to a doctor?"I’ve implemented features that I felt were missing from the "big" apps:
Privacy/Data Sovereignty: There are no accounts. No analytics. No "Donate" button. You can export your entire database as JSON and import it elsewhere. If you "Add to Home Screen" (PWA), it works perfectly in a basement with zero signal.