Deployment

Ship your docs site — Node server, Cloudflare Workers, or Docker

Always verify the production build first:

pnpm build

Node server

The default Nitro output runs on any Node 20+ host:

pnpm build
pnpm start        # node .output/server/index.mjs

Put it behind your reverse proxy (Caddy, Nginx, …) at docs.yourdomain.com.

Cloudflare Workers

One command — builds with the cloudflare_module preset and deploys with wrangler:

pnpm cf:deploy
  • Configuration lives in wrangler.jsonc (worker name, custom domain).
  • Production env vars go in .env.production (loaded by the deploy script).
  • With Claude Code, the deploy-cloudflare skill walks through first-time setup: /deploy-cloudflare.

Docker

The repo ships a Dockerfile:

docker build -t my-docs .
docker run -p 3000:3000 my-docs

Pass branding at build/run time via VITE_* env vars as needed.

Other platforms

Nitro supports many presets (Vercel, Netlify, Deno, …) — set NITRO_PRESET at build time:

NITRO_PRESET=vercel pnpm build