
Sixty containers on one server
One bare-metal box runs dozens to hundreds of Hoody containers. KSM and BTRFS dedup make the marginal cost near zero.
The Code Orchestrator runs VS Code inside the container and serves it as a normal URL. Open it from your phone in an airport, your tablet on the couch, your laptop at the desk. Same editor, same files, same dev server still running from yesterday.
The Code Orchestrator (the service that ships with every Hoody container) serves the VS Code web interface from one HTTPS endpoint. The URL spells out exactly which project, which container, and which folder the editor opens.
https://PROJECT-CONTAINER-code-1.SERVER.containers.hoody.com/?folder=/home/user/projectBookmark it once. Open it from any device with a browser. The Code Orchestrator reuses the same VS Code instance per id, so a second tab on a second device picks up the same workspace state instead of spawning a new one.
Not a stripped-down phone editor pretending to be VS Code. The orchestrator spawns a real VS Code process in the container with its own data directory at /data/instances/, full extensions, and the proxy endpoint for any local port your dev server binds to.
Port-proxy is built into the orchestrator. Any process bound to a local port — vite, next, the rails server, the python repl — is reachable at /proxy/PORT/ on the same URL. The phone's browser sees your dev server because the container's localhost is the container's localhost, not the phone's.
The phone-as-editor pitch usually breaks on the cliffs that make a phone a bad dev box. The orchestrator pattern moves all of them off the device.
If the laptop is on the desk and the phone is in your hand, both can open the same URL and pick up the same files. Travel becomes a hardware decision, not a workflow decision.
A line of code is bothering you in line at the airport. Open the URL. Edit the file. Run the tests in the embedded terminal. Commit. Push. Close the tab. The whole cycle runs on the container, not on the phone.
Extensions installed once, settings synced once, dev server started once. The state is the container's, not the laptop's. Buying a new device is opening a URL on it.
Computing stops being attached to the device in your hand.
The phone, the tablet, the laptop — they're rendering surfaces. The CPU, the disk, the dev server, the build cache, the running processes all live in the container. Any browser is enough to reach them.
The patterns developers reach for when they want a laptop-grade editor on a non-laptop device. Each one bends the device or the workflow. The orchestrator bends neither.
Open the URL. Make the fix. Close the tab. Your computer was never in your hand.