So why am I building a PaaS (platform as a service)?
Short answer: It's because I love
@Railway and I want the same experience with my own servers.
Long answer: I self-host several services on my home lab servers. This was a very manual task with minimal automation; I pulled code into servers, set up Docker Compose files, Tailscale, Traefik, DNS, pretty much everything was manual. On the other hand, when I deploy my side projects to services like Railway or
@vercel, everything is just a few clicks away and feels magical. I want to bring this seamless experience to my infrastructure.
In case you're wondering, yes, I've tried
@coolifyio /
@getdokploy /
@dokku /
@portainerio and some other self-hosted PaaS solutions, but they didn't work well for me. There were some flaws that I couldn't fix (private networking, load balancing workloads across servers, ease of swapping servers, self-healing workloads etc.).
So I started to rethink how I could build the perfect self-hosted PaaS. FYI, it's heavily inspired by platforms like Railway,
Fly.io, etc. My research was mostly reading their engineering blogs and chatting with LLMs.
Here's how my solution differs:
> Coolify/Dokploy = centralised control which is SSH-driven, push-based orchestration, not multiple server native.
> What I'm building = a distributed peer-to-peer container fabric: agent-driven, pull-based orchestration, private-first networking, disposable workloads, proxy nodes to handle ingress, and finally, a touch of magic.