Free · AGPL-3.0 · Docker

Run mybabynotes on your own server.

Every feature — offline logging, realtime household sync, shared timers, handoffs, push, CSV export — on your own hardware. One container on Unraid; a compose file everywhere else. Your baby’s data never leaves the house.

Install in five minutes Read the runbook

React PWA + Laravel API + Reverb websockets · SQLite + secrets in one /data folder · tagged releases with checksummed images

Install

Pick your box.

Unraid

Recommended

All-in-one image: one container serves the app, API and websockets on one port. Add it from Community Apps (or drop ca-template.xml into your templates folder until the listing lands). First boot generates every secret into /data/.env — nothing to configure on the LAN.

ghcr.io/straplocked/mybabynotes-aio:latest
# /data → /mnt/user/appdata/baby-log · port 3500

Prefer separate containers? The script install (needs Docker Compose Manager) installs and updates, pinned to the latest checksummed release:
curl -fsSL https://raw.githubusercontent.com/straplocked/mybabynotes/main/deploy/unraid/babylog.sh | sh

Docker Compose

Any Linux box, NAS or VPS with Docker. Three containers — app (nginx + PWA), API, websockets — and only the app port is published.

git clone https://github.com/straplocked/mybabynotes
cd mybabynotes
cp .env.example .env   # fill APP_KEY + REVERB_APP_SECRET
docker compose up -d --build
# → http://localhost:3500
  1. 1

    Put a proxy in front

    Nginx Proxy Manager, Caddy, Traefik — anything with websockets on. HTTPS is what makes push and home-screen install work on phones.

  2. 2

    Claim the instance

    Registration is invite-only. The first account on a fresh install is yours; everyone after needs a code. Pin a version by changing :latest to :v1.0.0.

  3. 3

    Invite the household

    Up to six adults, each as a parent or a caregiver, and up to ten children. With SMTP configured the code is emailed; without it, the app shows the code and you text it over.

Honest comparison

What you take on when you self-host.

Nothing about tracking changes. The hosted plan sells the ops, not the app.

Self-hosted Hosted
Tracking, sync, timers, handoffs, exportAll of itAll of it
Price$0 — AGPLFrom $5/mo per household
BackupsYou copy the data/ folderNightly, off-site
Push notificationsWork once you have HTTPSWork out of the box
Public address for invitesYour domain + reverse proxyIncluded
Emailed invites & password resetOptional — bring SMTPIncluded
UpdatesPull the new tag (or re-run the script)We do it

License

AGPL-3.0. Run it, change it, share it. The “mybabynotes” name and the hosted service aren’t part of the license.

Your data, one folder

SQLite plus the generated secrets, all under /data. Back it up however you back up everything else. Export a CSV from the app any time; import Baby Buddy’s.

Maintained, in daily use

A full API feature-test suite gates every tagged release; images publish to GHCR with a checksummed source tarball. The docs stay current with the code.

Rather not run a server this month?

Hosted is the same app with the chores done. Move between the two whenever — it’s the same export.

See hosted plans