soft-shell crabvietnamese mud crab
2
5 Comments

I built a one-command home server setup tool because my friends kept saying "I want one of those"

Every time I show someone my homelab (Home assistant managing my home, Immich backing up my photos, Vaultwarden storing all my passwords) they say the same thing: "Oh that's so cool, I want one of those."

Then I try to explain how to set it up. Five minutes into talking about Docker Compose files, reverse proxies, and auto-generated secrets, their eyes are already glazing over. It's not that it's impossibly hard. It's that there's a huge setup tax just to get to the fun part.

So I figured I'd pay that tax once, for everyone.


What it does

One command on your home server:

curl -fsSL https://raw.githubusercontent.com/moooosik/homelab-starter/main/install.sh | bash

It checks whether Docker is installed (and installs it if not), detects your server's local IP, shows you a scrollable menu of apps to pick from, and then generates a docker-compose.yml + .env with cryptographically secure passwords auto-filled. You never touch a config file. You never copy-paste a password. At the end it prints the URL for every app you installed.

That's it.


52 apps across 13 categories

The catalog covers pretty much everything you'd want to self-host: password managers (Vaultwarden), media servers (Jellyfin, Plex), photo backup (Immich), smart home (Home Assistant), local AI (Ollama + Open WebUI), document scanning (Paperless-ngx), network ad-blocking (Pi-hole), uptime monitoring (Uptime Kuma), and a lot more.

The installer walks you through categories one at a time so you're never staring at a wall of 52 checkboxes at once.


Why existing tools didn't quite fit

I looked at Deployrr and DockSTARTer before building this. They're good projects, but both have friction I wanted to eliminate:

  • curl | bash install: homelab-starter ✅ / Deployrr partial / DockSTARTer ❌
  • Auto-installs Docker: homelab-starter ✅ / Deployrr ✅ / DockSTARTer ❌
  • Auto-generated secrets: homelab-starter ✅ / Deployrr ❌ / DockSTARTer ❌
  • Works without Cloudflare: homelab-starter ✅ / Deployrr ❌ / DockSTARTer ✅
  • Fully open source: homelab-starter ✅ / Deployrr freemium / DockSTARTer ✅

The "auto-generated secrets" one matters more than it sounds. The single biggest setup mistake beginners make is reusing a weak password across every app they install. homelab-starter just handles it. Python's secrets module generates a unique cryptographic password for every service that needs one, and they all live in a .env file you never have to touch.


It's already being used

I haven't promoted this anywhere yet. 65 people have cloned it so far. That signal (real users finding it through GitHub search, no promotion) is what convinced me it was worth a proper launch post.


What's next

I'm actually about to use this myself. I'm moving soon and migrating my homelab to a more powerful machine, and homelab-starter is how I'm doing the reinstall. It's a good forcing function for eating my own cooking.

Beyond that: more apps in the catalog (requests welcome), a --add flag to add a single app to an existing deployment without regenerating everything, and better first-run error messages for people running on older Raspberry Pi hardware.


Where to find it

GitHub: https://github.com/moooosik/homelab-starter
PyPI: pip install homelab-starter
Ko-fi if it saves you an afternoon: https://ko-fi.com/moooosik

If you've been meaning to set up a home server but kept putting it off because it seemed complicated — this is the thing I built for you. Give it a try and let me know what apps are missing from the catalog.

And if you find it useful, a GitHub star helps more people find it. ⭐

on August 13, 2026
  1. 1

    The setup tax is the interesting part here. The value seems less about having 52 apps available and more about removing the configuration decisions that make self-hosting intimidating in the first place.

    1. 1

      Yes exactly. One argument that I could see is that setting things up is the learning experience that one might need to further tweak it to their own design, but learning can be done both ways, from the ground up or from the top down. I personally would have learned about self-hosted system much faster if I had a functioning model to learn from.

      1. 1

        That makes sense. Starting from a working model probably changes the learning curve quite a bit. I’d be interested in continuing the conversation as you see how people use it — what’s the best email to reach you at?

          1. 1

            Thanks! I’ve just sent it over.

            Looking forward to hearing your thoughts whenever you have a chance.

Trending on Indie Hackers
What 100B+ Claude tokens actually look like inside a tiny company User Avatar 32 comments 4 months to go. Chrome extension live. Web search integrated. 4 users. $0 revenue. Still here. User Avatar 26 comments Solo → Pre-Seed: The Tool Stack Decision That Will Either Save or Sink Your First 18 Months User Avatar 24 comments Two-way is not the same as symmetric User Avatar 20 comments Show IH: Apollodorus Video - browser-based video editor that runs locally User Avatar 10 comments Show IH:GSL Runtime: Moving Beyond .vrp Input User Avatar 8 comments