Baby Tracker for Home Assistant

Log every feed, diaper, nap, pump and more with one tap — no phone, no unlocking, no app to hunt for at 3 am. A self-hosted Home Assistant add-on with a colorful web UI, native HA entities over MQTT, and an optional 3D-printed ESP32 button remote.

Free & open source · runs on Home Assistant or any Docker host.

3D-printed baby remote with a printed sticky-label faceplate over 15 buttons

One tap on the wall — or in the app

The story

It started as a contraction tracker during labor — one button press logged a contraction, timestamped it, and pinged both our phones. It carried us through 700+ contractions over two weeks.

When our son arrived, the contraction tracker was retired the same day and reborn as a baby tracker: feeds, diapers, sleep, baths, medicine, tummy time, weight and pumping. Keeping the same low-friction, high‑WAF spirit, we 3D-printed a labeled button remote so nobody has to unlock a phone to log a diaper change at 3 am.

What it does

🍼

One-tap logging

17 event types across 8 categories — feed, pump, diaper, sleep, bath, medicine, tummy time, weight + notes.

📊

Live stats & journal

Last feed/diaper, totals today, sleep time, and a running journal — in a one-tap Ingress web UI.

🏠

Native HA entities

Sensors, a “sleeping” binary sensor, and a button per action appear automatically via MQTT discovery.

🎛️

Physical remote

A 3D-printed ESP32-C3 keypad publishes each press over MQTT — log without a screen.

Pump reminders

Independent per-side timers ping your phone when it's time to pump again.

🔒

Self-hosted

Your data stays home — SQLite under /data, no cloud, no account. Open source, MIT.

Get it running

Home Assistant add-on

  1. Settings → Add-ons → Add-on Store → ⋮ → Repositories
  2. Add https://github.com/hms-homelab/hms-baby-tracker
  3. Install Baby Tracker, Start, then Open Web UI

MQTT auto-configures with the Mosquitto add-on. Pre-built images mean installs are instant.

View add-on repo →

Standalone (any Docker host)

docker run -d -p 8099:8099 \
  -v "$PWD/data:/data" \
  -e TZ=America/New_York \
  -e MQTT_HOST=192.168.1.10 \
  ghcr.io/hms-homelab/baby-tracker:latest

Multi-arch (amd64 + arm64). Or grab the full hardware/firmware suite below.

Hardware & firmware suite →

Want the remote without building it?

It's made in small batches. Add your name and we'll ship the next one — no payment now.