ORCHD

What ORCHD is

ORCHD is a multi-tenant workload orchestrator: one Go daemon that takes "run this small app for this tenant, give it a URL, keep its data, and stop paying for it when nobody is using it" and makes it an API call.

It is deliberately small. One binary holds the control plane and the gateway; a single-file store holds the state; the substrate underneath is one interface with several implementations. There is no cluster to join, no scheduler to tune, no YAML to render, and nothing to install on the box beyond a container runtime.

What it actually does

Provisionscreates a workload from a preset, an image or a template, with its own volume, env and resource caps
Addressesmints a hostname per workload, accepts custom domains, or assigns a stable local port
Routesresolves the request Host against an exact-match route table and reverse-proxies (including WebSockets)
Sleepssuspends anything that has not served a request within the idle timeout — idle RAM goes to zero
Wakesboots a suspended workload on the next request, in about a second, and serves it
Isolatesruns tenants under gVisor with memory / CPU / pid caps, so untrusted code is survivable
Protectsbearer-key auth with roles, per-key rate limits, an audit event stream
Backs upbyte-exact volume snapshots to a local dir or S3/R2, plus the control-plane index itself

The three records

Everything above is expressed with three records, and no others:

  • Project — a grouping. A tenant, an environment, a customer. Deleting it cascades.
  • Workload — the unit that runs. Routable, independently scheduled, scale-to-zero, with a volume that outlives any single instance of it.
  • Route — a hostname pointing at a workload. A workload may have many.

Concepts covers the model in full, including states and placement.

What it runs on

SubstrateIsolationWhere it is used
Host processesOS processyour laptop, CI — no Docker required
Docker + gVisor (runsc)userspace kernel, VM-grade, no /dev/kvmthe production box today
Firecracker microVMmicroVM + jailer, snapshot/restoreplanned, needs bare metal

The control plane never talks to a runtime directly — it talks to a Runtime interface — which is why the same control loop, gateway and wake sequencing you exercise on macOS is the one that runs in production. See Substrates & isolation.

Where to go next

Status

The control plane, gateway, scale-to-zero lifecycle, templates, images, backups, multi-domain routing, keys and the admin panel all work and are verified on real hardware. Connection pooling for the database workload, an HA tier, a scheduler across many nodes and the Firecracker driver are not built — see the roadmap.

ORCHD is a standalone project. Two products are being built on top of it — hosted Supabase-compatible backends, and per-project dev environments — but they are users of ORCHD, not part of it, and nothing in the orchestrator is specific to either.

from the same team

Related projects

ORCHD is built by the makers of these open-source tools and products.