Deployment Guide
This guide covers deployment of the core delivery only:
- Frontend:
apps/web(user site),apps/admin(admin console) - Backend:
node1-auth~node10-ai(10 Workers)
Value-added services (e.g. AI Provider Service) are not included. See Value-Added Services.
Choose your path
Section titled “Choose your path”In the documentation sidebar, every step for both tracks is listed under Deployment Guide. Pick one track below and follow only those pages in order.
ZShip supports two ways to set up local development and deploy to Cloudflare:
CLI (manual commands)
Section titled “CLI (manual commands)”Use this path if:
- You are on a base/minimal setup without Dev Console
- You prefer the command line or need to script deployments (CI, automation)
- You want full control over each step
You will run pnpm install, wrangler d1 create, wrangler deploy, and similar commands manually in your terminal.
Start here: CLI: Before You Start
Dev Console (UI)
Section titled “Dev Console (UI)”Use this path if:
- You have the full ZShip template with Dev Console
- You prefer a graphical interface for local startup and deployment
- You want fewer commands to remember and fewer steps to miss
You will run pnpm dev:console once, then use the browser UI for setup, migrations, service startup, and Cloudflare deployment.
Start here: Meet the Dev Console
Please read your chosen path in order the first time through.
Two ways to get the source code
Section titled “Two ways to get the source code”When users receive this template, there are usually two approaches.
Option 1: GitHub Fork
Section titled “Option 1: GitHub Fork”This means:
- The user directly forks the official repository into their own GitHub account or organization.
Advantages:
- It keeps the upstream relationship with the official repository.
- It is easier to manually sync future template updates.
- It fits the common workflow where the official template keeps evolving and users build their own product on top of it.
Disadvantages:
- It does not update automatically.
- Users still need to sync upstream changes by hand.
- If a user changes a lot locally, future syncs can create conflicts.
Option 2: Copy the code and create a new repository
Section titled “Option 2: Copy the code and create a new repository”This means:
- The user downloads the official codebase.
- They then create a brand-new Git repository under their own account.
Advantages:
- The repository history looks cleaner.
- Some teams prefer the feeling that this is fully their own project from day one.
Disadvantages:
- There is no upstream relationship to the official template.
- Future official updates will not have a ready-made sync path.
- Keeping up with template improvements usually means manual compare-and-copy work.
Recommended approach
Section titled “Recommended approach”We recommend users start with:
GitHub Fork
Why:
- The official template will continue to evolve.
- A fork at least preserves a clean path for manually syncing future official changes.
- For most users, long-term maintenance cost is lower than copying the repo into a totally separate history.
But this point must be crystal clear:
Forkdoes not mean you automatically receive official updates.
In practice that means:
- The official template can keep moving.
- Users will not receive those changes automatically.
- Users must sync
upstreammanually.
What this guide covers
Section titled “What this guide covers”This guide covers the Cloudflare deployment path for:
backend/node1-auth-servicebackend/node2-support-servicebackend/node3-pay-servicebackend/node4-notify-servicebackend/node5-blog-servicebackend/node6-cdn-servicebackend/node7-site-servicebackend/node8-prompt-servicebackend/node9-checkin-servicebackend/node10-ai-serviceapps/webapps/admin
Reading order by track
Section titled “Reading order by track”If you use the CLI
Section titled “If you use the CLI”- CLI: Before You Start
- CLI: Local Development
- CLI: Prepare Cloudflare Resources
- CLI: Deploy Backend Workers
- CLI: Deploy Frontend Pages
- Bind Domains and Environment Variables
- Initialize Your System
- Launch Checks and Common Errors
If you use Dev Console
Section titled “If you use Dev Console”- Meet the Dev Console
- Before You Start
- Prepare Cloudflare Resources
- Deploy Backend Workers
- Deploy Frontend Pages
- Bind Domains and Environment Variables
- Initialize Your System
- Launch Checks and Common Errors
Troubleshooting and ops index
Section titled “Troubleshooting and ops index”| Topic | Doc |
|---|---|
| Launch checklist, Observability, CDN/R2, email & webhooks, common errors | Launch Checks |
| Dev Console vs Cloudflare Dashboard | Meet the Dev Console §4 |
| Secrets and repo safety | Important Notes — Security |