Free software has gotten ridiculously good
I’ve been self-hosting things on my Prodesk for a while now, and the thing that keeps catching me off guard isn’t the setup process or the learning curve. It’s how good the software has gotten. Not “good enough” good, but actually great.
Free and open source software has gotten so good that it’s now genuinely possible to have a used office PC humming in your living room, replacing a chunk of the subscriptions you’re paying for every month. We’re living in an era where owning things has become a privilege, as everything has become a subscription now. Your file and photo storage, your password manager, your productivity tools, even your PDF editor.
And here’s the thing: in the age of AI, you don’t even need to be a sysadmin to pull this off. I do have a background in software engineering so I kind of have a head-start with the know-how, but whenever I get stuck with something like a Linux command or a Docker networking issue, I ask Claude and that’s it 90% of the time. The barrier to entry has never been lower. If you can follow instructions and aren’t afraid of a terminal, you can take advantage of these free and open-source software too.
Here are some of the notable ones that I’ve been using and loving.
Immich
I already wrote about this in my home server post, but it’s worth repeating: Immich is the crown jewel of my setup.
It’s a self-hosted Google Photos replacement, and I don’t use the word “replacement” lightly. It does auto-backup from my phone, facial recognition, a timeline view, map view with GPS data from my photos, albums, sharing, and exposes a nice admin panel where I can manage job queues for image tagging and whatnot. The mobile app is polished enough that if you handed it to someone who’d never heard of self-hosting, they’d just think it was a normal photo app.
What makes it special isn’t any single feature, but rather that the whole experience feels considered. The UI is clean and responsive, search works as you expect it to, and the ML-powered features (face detection, object recognition) run locally on your hardware, which means your photos never leave your server. For someone who’s been getting more into photography, having a place to store and browse thousands of photos that I actually own is a big deal.
Immich recently hit v2.7, sitting at nearly 100k GitHub stars. The momentum behind this project is insane.
I actually ended up buying the supporter license. It’s not required as everything works without it, but the project is so good that I wanted to pay for it. That almost never happens with free software, and I think it says a lot about where Immich is at.
I started here as I was quickly running out of cloud storage on Google and didn’t want to pay the premium for a tier upgrade. If you’re like me and you’re on the fence about self-hosting anything, start here.
copyparty
copyparty is the opposite of Immich in almost every way, and I mean that as a compliment.
Where Immich is a full-blown application with ML pipelines and a mobile app, copyparty is a single Python file, for real. One file. You run it, and suddenly you have a file server with a web interface, resumable uploads, WebDAV, SFTP, FTP, media indexing, audio transcoding, and a bunch of other features that have no business being packed into one script.
The guy who made it apparently wrote it using his phone during his bus rides to the office 😂 14:50 here:
I started using it because I needed a quick way to move files between my devices without dealing with cables or cloud services. The setup is literally pip install copyparty or just downloading the self-extracting Python file and running it. No database, no Docker required (though you can if you want, which is what I did), no config files unless you need them.
What surprised me is how deep it goes once you start digging. Granular user permissions, on-the-fly audio transcoding to opus or mp3, deduplication, checksum verification, zeroconf discovery. It even has an Android app for quickly sending files or photos to the server. The whole thing runs in a browser and feels snappier than it has any right to.
It’s the kind of tool where you start using it for one thing and then realize it quietly handles five other workflows you were duct-taping together with different apps.
Homepage
Homepage is a dashboard that gives you a single page with links to all your self-hosted services. Simple concept, but genuinely useful once you’re running more than a couple of things and can’t be bothered remembering which port goes to what.
I haven’t configured it to get the most out of it yet. It supports service widgets that can pull in live stats from things like Immich and Docker, but even in its basic form, it’s already saving me from the “was Immich on port 2283? where’s copyparty at? 3393?” game. I’ve also added links to external services I use frequently, like my Cloudflare dashboard where I manage my domains and tunnels, so it doubles as a personal start page.
It’s one of those things where you set it up in 10 minutes and immediately wonder why you didn’t do it sooner.
The glue: Docker, Tailscale, and Cloudflare
The apps get the spotlight, but honestly none of this would be practical without the infrastructure tools that make self-hosting feel… normal.
Docker is the foundation. Every service I run is a container, which means setup is usually just a docker-compose.yml and a docker compose up -d. No dependency conflicts, no “it works on my machine” nonsense. If something breaks, I tear it down and spin it back up. If I want to try something new, I pull an image and it’s running in seconds. Docker is what turned self-hosting from a sysadmin hobby into something any developer (actually anyone, really) can do on a weekend.
Tailscale is how I access my home server from anywhere. It creates a mesh VPN between my devices, so my Prodesk is reachable from my laptop or phone whether I’m at home or at a coffee shop. No port forwarding, no dynamic DNS, no exposing anything to the public internet. You install it, log in, and your devices can just see each other. It’s one of those tools that feels like magic the first time you use it.
Cloudflare handles the public-facing side. My personal site runs through Cloudflare Pages, and I’ve used Cloudflare Tunnels to expose specific services without opening ports on my router. The free tier is generous enough that I’ve never had to pay for anything. Between Tailscale for private access and Cloudflare for public access, I’ve got both sides covered without ever touching my router’s firewall settings.
These three aren’t flashy. They don’t have beautiful UIs or clever features to demo, but they’re the reason self-hosting in 2026 is something you can just do.
The de-Google payoff
I mentioned in my home server post that I was working on pulling my data out of Google. That’s mostly done now.
I ran Google Takeout to export everything: photos, Drive files, etc. My entire Google Photos library has been migrated into Immich (shoutout to simulot/immich-go), and all my Google Drive files are now sitting on my server, browsable and accessible through copyparty. Between the two of them, they’ve replaced the Google services I was actually paying for.
It’s a good feeling. Not in a tinfoil-hat way, just in a “my stuff is on my hardware and I’m not paying an annual fee for it anymore” way. The Takeout process itself was a bit tedious as you’re downloading hundreds of gigs in chunks, but once the data was on the server, Immich and copyparty handled the rest without much fuss.
Some I’m eyeing next
Part of the fun of this rabbit hole is that there’s always more to explore. Here are a few I haven’t tried yet but have been on my radar:
Super Productivity - An open source task manager and time tracker with built-in Pomodoro timers, break reminders, and integrations with Jira and GitHub issues. What caught my eye is that it supports WebDAV sync, which means I can potentially use copyparty as the sync backend since copyparty speaks WebDAV natively. That would let me sync my tasks across devices without relying on a third-party cloud. Still need to test if the setup works smoothly, but on paper it’s a perfect fit for my existing stack.
AdGuard Home - A network-wide DNS ad blocker. You point your router’s DNS to your server, and every device on your network gets ad blocking without installing anything per-device. Smart TVs, phones, IoT devices, everything. It has a clean UI, built-in encrypted DNS, and per-client settings out of the box. I’ve been meaning to set this up on the Prodesk for a while now.
BentoPDF - A self-hosted PDF toolkit that runs entirely in your browser. Merge, split, compress, convert, OCR — all client-side, meaning your documents never leave your device. No more uploading sensitive PDFs to random websites to do a simple merge. You can self-host it with Docker or just use their hosted version. The fact that it’s all WASM-based and processes everything locally is a nice touch.
Vaultwarden - A lightweight, self-hosted Bitwarden-compatible password manager. I’ve been on 1Password for a while, and it’s been fine, but they recently announced a significant price increase, and some AI features that’s making me reconsider. I’m just not exactly sure what to feel about exposing my passwords/keys of all things to AI. Vaultwarden is fully compatible with all of Bitwarden’s official apps and browser extensions, so the migration path is straightforward. I’m still on the fence though, 1Password is genuinely good and there’s value in not having to maintain your own password infrastructure but it’s tempting.
Karakeep - I mentioned this one in my home server post. It’s a self-hostable bookmark manager with AI-powered tagging. Think of it as a personal knowledge dump for links, notes, images, and PDFs. Still haven’t set it up, but it’s high on the list.
And honestly, I’ve been occasionally going through the awesome-selfhosted list on GitHub just to see what else is out there. It’s a rabbit hole. Every time I open it I find three more things I want to try.
Why now?
I think a few things came together to make this moment possible.
Docker made deployment a non-issue. You don’t need to be a sysadmin to get these things running anymore. Most of these projects ship with a docker-compose.yml that just works.
Hardware got cheap. I know, RAM and storage prices have skyrocketed since the AI boom, but as I wrote before, you can pick up a used office mini PC for under ₱20k and have more than enough power to run a dozen services. Cloud storage subscriptions add up; a one-time hardware purchase doesn’t. You can even pick up that unused laptop you have lying around just collecting dust.
And honestly, the communities have just continued getting better. The people building and maintaining these projects are shipping with a level of polish and documentation that’s more than just commendable. Immich’s docs are better than some commercial products I’ve used professionally.
Personally, it was subscription fatigue and feeling like I didn’t really own anything the files I had on my Google cloud, aside from privacy and really just wanting to tinker around and learn this side of things in general.
If you’ve been curious about self-hosting or free tools in general, there’s never been a better time to start. Grab an old machine, spin up a container, and see for yourself. You might be surprised at how much you’ve been overpaying for.