Vercel Deployment
Deploy Nebutra frontends on Vercel — marketing and docs today; optional web/auth cutover; monorepo link paths.
Overview
Nebutra uses separate Vercel projects per public surface. That isolates env, domains, and deploy quotas.
| Vercel project (examples) | App path | Domain (nebutra.com) | Steady state |
|---|---|---|---|
nebutra-sailor-landing / landing | apps/landing | nebutra.com | Production on Vercel |
docs | apps/sailor-docs | nebutra.com/docs | Production on Vercel |
nebutra-web | apps/web | app.nebutra.com | Optional; ECS is production today |
nebutra-auth | apps/auth | auth.nebutra.com | Optional; ECS is production today |
Do not treat backends/gateway as a default Vercel Functions deploy for
nebutra.com production — API stays on ECS (or Cloudflare Workers gateway target).
Web must build with Next, not the package default Vite script:
# apps/web vercel.json / project buildCommand
cd ../.. && pnpm turbo run build:next --filter=@nebutra/webPrerequisites
- Vercel account + CLI (
pnpm dlx vercel login) - Monorepo linked with correct Root Directory (
apps/web,apps/auth, …) - Production secrets:
BETTER_AUTH_*,DATABASE_URL, OAuth clients, etc.
Step-by-step: first link
pnpm dlx vercel loginFrom the monorepo root, or from each app directory:
cd apps/landing && vercel link
cd ../sailor-docs && vercel link
# optional cutover targets:
cd ../web && vercel link
cd ../auth && vercel linkPaths are under apps/* or backends/gateway — there is no
apps/api-gateway directory.
Prefer Better Auth for production parity:
vercel env add BETTER_AUTH_SECRET production
vercel env add BETTER_AUTH_URL production # https://auth.nebutra.com
vercel env add AUTH_COOKIE_DOMAIN production # .nebutra.comUse the environment variables reference.
cd apps/landing && vercel --prod
cd ../sailor-docs && vercel --prodOr rely on Git integration on main (watch Hobby daily deploy quotas on
monorepos — disable auto-deploy on non-critical projects if you hit limits).
Optional web / auth cutover
Production traffic for app / auth remains on ECS until DNS is flipped.
Checklist + preflight (no DNS mutation):
node scripts/preflight-web-auth-vercel.mjs
node scripts/redeploy-web-auth-vercel.mjs # after green buildCommand + quotaSee monorepo docs/ops/nebutra/web-auth-vercel-cutover.md.
Related
- Deployment Overview — full production split
- Authentication — Better Auth default
How is this guide?
Last updated on