Deploying to Vercel
- In Vercel, choose Add New > Project and import your GitHub repository.
- Use these build settings:
- Install command:
npm ci - Build command:
npm run build - Node.js: 22.x, to match
.nvmrc - Framework preset: Other works fine
- Install command:
- Add the environment variables listed in Environment variables.
- Deploy and note the production URL.
- In Supabase, open Authentication > URL Configuration:
- Site URL: your production
APP_URL - Redirect URLs:
https://<your-domain>/auth/callback,https://<your-domain>/reset-password, and any preview URLs you use. If your project allows wildcards,https://*.vercel.app/auth/callbackcovers previews.
- Site URL: your production
- If you change environment variables later, redeploy.
Pull requests
Every pull request runs CI in GitHub Actions: npm ci, Biome, typecheck, tests, build, and npm audit --omit=dev --audit-level=high. Vercel also builds a preview URL for each pull request. Protect main by requiring the Lint, typecheck, test, build, audit check.
Keep projects separate
Give every client their own Supabase project and their own Vercel project. Don't share keys between clients, and keep development and production databases apart.