Deployments
One button. Predictable stages. Live URL on the other side.
The one-button promise
Hitting Deploy in Studio fires the same pipeline every time — same stages, same order, same structured logs. There's no "fast deploy" or "secret deploy" path. Loor's promise is that the button behaves the same way today, tomorrow, and after you've shipped a hundred times.
What happens when you click Deploy
- 01 Build
Framework-native build via the right preset (Next, Vue, Vite, Astro, Go, Python, etc.).
- 02 Containerize
Multi-stage Dockerfile with layer cache.
- 03 Provision
Spin up backing services your project asks for (MongoDB, Redis, R2).
- 04 Roll out
Apply the new revision to the regions you're configured for.
- 05 Health check
Wait for the new replicas to pass readiness.
- 06 DNS
Update records for any custom domain pointing at the deployment.
- 07 TLS
Issue or renew certificates automatically.
- 08 Cut over
Switch traffic. Old replicas drain gracefully.
Each stage is idempotent — re-running a failed deploy resumes from where it failed, rather than starting over.
Branch previews
Every branch you push gets a preview URL. Set the template in loor.json
under services.web.branches. Previews share the same backing services as production
unless you opt for isolated ones.
Rollback
Open Deployments in the project sidebar. Any past deployment can be re-applied with one click — Loor points the image back to that revision, and K8s rolls the change. DNS and TLS stay untouched.
Environments
Studio ships with three default environments: production, preview, and
dev. Each has its own env vars, secrets, and (optionally) backing services. You can add
more in Project Settings → Environments.