instant rollbacks Every deploy is an immutable version. Bad release? You're back on the last good one before your pager finishes buzzing. $ forge rollback --to v41 ✓ traffic shifted to v41 in 0.8s v42 kept for diffing: forge diff v41 v42
preview every branch Each branch gets its own isolated URL with production-shaped data. Share it in the PR, kill it on merge. $ forge preview ✓ preview live (branch: fix/rate-limit) https://fix-rate-limit--api.forge.run
secrets, encrypted at rest Set env vars from the CLI, scoped per environment. AES-256 at rest, injected at runtime, never written to disk. $ forge env set STRIPE_KEY --prod ? paste value (hidden): •••••••• ✓ encrypted & stored prod only
zero config, real config Forge detects your runtime, port and build step. When you outgrow defaults, one small forge.toml — not 400 lines of YAML. # forge.toml — all of it, optional runtime = "node22" regions = ["iad1", "fra1"] healthcheck = "/healthz"