Self-Hosted App Review: BabyBuddy

Last year, I got bit pretty badly by the Linux bug. I’d played around with distro-hopping back in the day – dual-booting Ubuntu on my old school MacBook – but hadn’t really dallied with the OS for some time, and was keen to see what had changed since I last used it in earnest.

I also found myself with the separate problem of ever-increasing Google Storage costs. I had hundreds of gigabytes of files, photos, etc. taking up storage, and requiring me to spend over a hundred bucks per year for a terabyte of cloud storage.

Build in progress (thanks Linus Tech Tips…)

To kill two birds with one stone, I ended up building myself a home server (affectionately known as HAL9000) last spring, installed NixOS, and got to work on setting up various self-hosted apps – both for the fun and learning of the thing, and to progressively de-Google my digital life!

It’s alive!!!

Fast-forward 10 months or so, and this little machine is home to dozens of apps, tools, and services, saving me hundreds per year on subscriptions to paid cloud services by doing it myself. I had a ton of fun learning and setting everything up, and it’s become a staple of our digital life.

Hal’s running all of this while barely breaking a sweat

Latest App Install: BabyBuddy

Recently, I installed a new app, “BabyBuddy“, to my home server. So far I’m liking it quite a bit, though we haven’t yet had a chance to explore all the features – we’re considering it a “beta” install, with a planned launch date of late August of this year.

HAL9000 greets me with his infamous reply every time I log in via SSH.

Setting it up was a breeze – I adapted the example docker-compose file from the babybuddy GitHub repo to my own needs, then set up a systemd service via my Nix configuration to enable it:

version: "2.1"
services:
  babybuddy:
    image: lscr.io/linuxserver/babybuddy
    container_name: babybuddy
    volumes:
      - /tank9000/ds1/bb/appdata:/config
    ports:
      - 8100:8000
    restart: unless-stopped
    env_file:
      - /run/agenix/bb-env

Once up and running, I hooked it up to a new subdomain on my website and fired it up. I had to put a placeholder baby in the app to unlock the full suite of functionality.

The UI template doesn’t quite know how to handle a birth date in the future, but I’ll forgive it!

Once we added the placeholder baby, we were able to see the various different features, including various kinds of tracking (feedings, diaper changes, pumpings, sleeps/naps, tummy time, breastfeeding) as well as details about each category. It also has the ability to track measurements and vitals such as height, weight, and body temperature, as well as adding general notes on your baby.

Now I’m no designer, and can’t comment on the aesthetic, but I love a good grid of zero states!

Verdict

While the app looks cool, we haven’t really had a chance to dig into it yet. That said, Jasmine and I are very excited to start using the app in late August of 2025!

If you read this far into the article and are confused, go back and read the bold and underlined text for more clues!

Leave a Comment