Skip to content

CLI: Deploy Frontend Apps

Deploy the core frontend apps only: apps/web-astro and apps/admin.

Use the current repo config as the source of truth:

  1. apps/web-astro deploys as a Worker named web
  2. apps/admin deploys as a Pages project named admin

Keep these names unless you also update the matching wrangler.toml, domains, and environment variables.

apps/web-astro uses Astro with @astrojs/cloudflare and deploys as a Worker with static assets.

Terminal window
cd apps/web-astro
pnpm run build
npx wrangler deploy
cd ../..

apps/admin uses Nuxt. Build and deploy to Cloudflare Pages:

Terminal window
cd apps/admin
npx nuxi build --preset=cloudflare_pages
npx wrangler pages deploy dist --project-name=admin --branch=main --commit-dirty=true
cd ../..

Or use the project’s configured deploy command (e.g. pnpm run deploy if defined).

After deployment, configure frontend Cloudflare environment variables:

  • Backend service URLs (e.g. AUTH_SERVICE_URL, SUPPORT_SERVICE_URL, etc.)
  • ZSHIP_KEY if you use public HTTP fallback instead of Service Bindings
  • Any other required public vars

For apps/web-astro, use Worker vars/secrets. For apps/admin, use Pages vars/secrets.

If you see a SESSION binding warning, the expected KV binding may not be configured. Check:

  • Wrangler/Pages binding configuration
  • Whether the target environment matches what you prepared
  • apps/web-astro Worker deployed
  • apps/admin Pages project deployed
  • Critical environment variables set