Minecraft servers that spin up in seconds — each one its own isolated microVM.
Craftling is an open-source platform for hosting Minecraft servers on a fleet of machines. Every game server runs inside its own Firecracker microVM, so worlds are isolated from one another with the security boundary of a VM and the startup speed of a container.
The platform is built around a single idea: a control plane decides what should be running, and a reconciler continuously drives reality toward that desired state — placing each server on a host with capacity, booting its microVM through a host agent, and tearing it down on delete. The control plane never touches the hypervisor; only the agents do.
| Piece | Role |
|---|---|
| Control plane | HTTP API (auth, roles, owner-scoped server CRUD), scheduler, and the desired-state reconciler. |
| Scheduler | Places each server on a ready host with enough CPU/memory and atomically reserves that capacity. |
| Host agent | Runs on every fleet host; provisions, starts, stops, and tears down local microVMs on request, and heartbeats its capacity back. |
| Firecracker runtime | Boots each server as a real microVM from a per-version Minecraft rootfs image. |
- Craftling — the platform itself: Go control plane + host agent, the scheduler, the reconciler, and the Firecracker runtime. Start here; its README and
docs/PLAN.mdcover the architecture and phased roadmap. - craftling-templates — server templates.
A small core team stewards Craftling across the control plane, the host agent, and storage — alongside everyone who sends a pull request.
![]() Afshin Arani @aarani · infrastructure Project lead. Resident Minecraft player, owns the infra, pays the bills. |
![]() Ashkan A. Nami @namiashkan16 · ghost |
![]() Saba Emamjomeh @SabaEmamjomeh · scheduler Mastermind behind the agents, never been invited to play Minecraft. |
![]() Arman Monajemi @monajemi-arman · storage / net 2nd resident Minecraft player, likes to rewrite everything in RUST. |
Go · Gin · PostgreSQL · Firecracker · Docker
Craftling is released under the GNU Affero General Public License v3.0 (AGPL-3.0).



