Environments

Every project gets two environments with separate databases.

Production

When you push to the main branch, Vercel deploys to production. This is your live URL — the one your users see. It connects to your production Supabase database.

Staging

Every push to a non-main branch creates a Vercel preview deployment with its own URL. These connect to your staging Supabase database. Test freely — nothing affects production.

How it works technically

Vercel supports different environment variable values per deployment target. Your DATABASE_URL, NEXT_PUBLIC_SUPABASE_URL, and other Supabase keys each have two values — one targeting "production" and one targeting "preview" and "development". Same variable names, different databases.

Promoting to production

Merge your branch to main. That's it. Vercel builds and deploys to production automatically. The whole process takes about 1-2 minutes.