Deployment workflow
Canonical reference: ../guides/domains.md
Environments
| Environment | API | Product SPA | Notes |
|---|---|---|---|
| Local | localhost:8787 | localhost:5173 | pnpm dev |
| Production | api.cepatedge.com | app.cepatedge.com | Custom domains on Pages/Worker |
Staging *.zamdev.dev and bare *.pages.dev URLs are deprecated for auth/CORS configuration. Use custom .com domains in Cloudflare; Pages redirects handle default hostnames.
CI / manual deploy order
pnpm worker:deploy— API first (schema + secrets must exist)pnpm landing:deploy— marketingpnpm web:deploy— demo SPApnpm docs:deploy— documentationpnpm git:deploy— git analytics (optional)
GitHub Actions
- CI:
.github/workflows/ci.yml— typecheck, tests, builds (no deploy) - Git analytics:
.github/workflows/deploy-git.yaml— Pages projectgit-cepatedge
Add similar workflows for docs/web/landing when ready; run IndexNow ping after successful Pages deploy (see maintainer/phases/seo.md slice 4).
Rollback
Pages: wrangler pages deployment list --project-name=<name> → rollback to prior deployment ID.
Worker: redeploy previous git tag or wrangler rollback per Cloudflare docs.