runnable reference docs.
Every code block has a ▶ Run button that POSTs to the sandbox and returns a live URL inline. Reading by an AI? /docs/llms.txt gives you the whole thing.
from zero to a public URL in under a minute.
Three steps. The CLI handles auth, image build, container start, and edge proxy registration. You write one file and run one command.
01
install the CLI
terminal
# install the CLI
curl -fsSL https://deploy.me/install | sh
# or with brew
brew install deploy-me/tap/deploy.me02
write deploy.me.ts
deploy.me.ts
import { Deploy } from "deploy.me"
export default Deploy
.name("hello-agent")
.image("deploy.me/hello:1")
.target("ovh:rise-1@eu-west")
.scale({ min: 0, max: 10, idle: "30s" })
.http({ port: 3000 })
03
run deploy.me up
terminal
$ deploy.me up ✓ image pulled 1.1s ✓ container started 2.4s ✓ proxy registered 0.3s ✓ live 94ms → https://hello-agent.deploy.me
That URL is real. It serves your container until you kill it or scale it to zero. Per-second billing starts on first request.
everything is a file.
A deploy is described by a single TypeScript file. The CLI parses it, validates against ambient types, and ships it. No YAML. No CI config. No control plane to learn — just a builder you can autocomplete.
every verb on Deploy.
.name(), .image(), .target(), .env(), .scale(), .http(), .schedule(), .budget(). Each is fully typed; hit tab.