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.