Deployment
The web app has the complete pipeline: develop and main each deploy automatically to the Cloudflare Pages project emaw-react-web-app.
| Branch | Workflow | Build | URL |
|---|---|---|---|
develop | .github/workflows/deploy-develop.yml | npm ci, npx vite build --mode development with NODE_ENV=production, npx wrangler@4 pages deploy dist --project-name emaw-react-web-app --branch develop | https://develop-web-app.everymanawarrior.cc |
main | .github/workflows/deploy-production.yml | npm ci, npx vite build, … --branch main | https://app.everymanawarrior.cc |
- Node 24,
cache: npm. --mode developmentonly selects.env.development;NODE_ENV=productionkeeps it a minified production bundle.- Develop deploys cancel an older in-progress run; production deploys are queued.
- Secrets
CLOUDFLARE_API_TOKENandCLOUDFLARE_ACCOUNT_IDon thedevelopandproductionGitHub environments; the production environment only accepts deployments frommain.
This is the pattern the documentation site copies and the one the website and Admin CRM should adopt for production.
Manual deploy
npx wrangler login
npx vite build --mode development
npx wrangler pages deploy dist --project-name emaw-react-web-app --branch develop
Checklist before a production release
- Backend changes it depends on are live on
app.emaw-app.com -
.env.productionpoints athttps://app.emaw-app.com/and the production website - Hand-off tested on dev end to end
- Merge
develop→main; watch the Actions run; openhttps://app.everymanawarrior.ccand sign in