Deploy to Production
Your app is ready for the world. This guide walks you through deploying to Vercel - it takes about 5 minutes.
Before you deploy
Make sure these things are done:
Push to GitHub
If your code is not on GitHub yet, create a repository and push:
# Create a new repo on github.com first, then: git remote add origin https://github.com/yourusername/your-app.git git branch -M main git push -u origin main
Deploy to Vercel
- Go to vercel.com and sign up with GitHub
- Click "Add New Project"
- Import your GitHub repository
- Vercel auto-detects Next.js settings
- Add your environment variables (same as .env.local)
- Click "Deploy"
In 1-2 minutes, your app is live at a .vercel.app URL.
Environment variables
In Vercel dashboard, go to Settings > Environment Variables. Add each variable from your .env.local:
- NEXT_PUBLIC_SUPABASE_URL
- NEXT_PUBLIC_SUPABASE_ANON_KEY
- Any other secrets your app needs
After adding variables, redeploy for them to take effect.
Custom domain
To use your own domain instead of .vercel.app:
- In Vercel, go to Settings > Domains
- Add your domain (e.g., myapp.com)
- Update DNS records at your domain registrar
- Wait for DNS propagation (usually 5-30 minutes)
Vercel provides free SSL certificates automatically.
Update Supabase for production
If using authentication, add your production URL to Supabase:
- Go to Supabase dashboard > Authentication > URL Configuration
- Add your production URL to "Site URL"
- Add it to "Redirect URLs" as well
Post-deploy checklist
Congratulations!
Your app is live on the internet. Real users can now access it. This is a huge milestone - most people never ship anything.
But this is just the beginning. The next step is about improving your app based on feedback.