# Full Setup Guide

> Connect a locally working Supacharger application to hosted Supabase and Vercel, configure authentication and email, and verify the production deployment.

# Full setup guide

Use this wizard after Supacharger works against the local Supabase stack. It takes the application from a local baseline to a tested hosted Supabase project and a production Vercel deployment.

This is a production-configuration wizard, not an installation guide. Supabase and Vercel MCP connections make the work easier for a coding agent, but they are developer tooling; the deployed application does not depend on either MCP connection.

## What you will configure

| Step | Outcome |
| --- | --- |
| [1. Before you begin](./hosted-setup/01-before-you-begin.md) | Confirm the local baseline, select the intended projects, and decide application policy. |
| [2. Connect hosted Supabase](./hosted-setup/02-connect-hosted-supabase.md) | Link the project, preview and apply migrations, and enable the access-token hook. |
| [3. Configure environment variables](./hosted-setup/03-environment-variables.md) | Set local and Vercel variables without exposing server credentials. |
| [4. Deploy and establish URLs](./hosted-setup/04-deploy-and-urls.md) | Establish the canonical HTTPS origin and configure Supabase redirect URLs. |
| [5. Configure authentication policy](./hosted-setup/05-authentication-policy.md) | Align hosted Auth settings with `src/supacharger.config.ts`. |
| [6. Configure production email](./hosted-setup/06-production-email.md) | Connect custom SMTP, authenticate the sending domain, and tune rate limits. |
| [7. Install email templates](./hosted-setup/07-email-templates.md) | Install templates that match OTP, link, recovery, and security flows. |
| [8. Verify production](./hosted-setup/08-production-verification.md) | Exercise the complete hosted authentication journey and run final checks. |

Complete the steps in order. A later page assumes the earlier page has supplied its project, keys, domain, or policy decisions.

## Keep environments separate

Repeat the hosted parts of the wizard for every Supabase environment. Local `supabase/config.toml` settings and files under `supabase/templates/` configure only the local stack; they do not update a hosted project's Auth settings, templates, providers, hooks, or rate limits.

Use different Supabase projects and secrets for staging and production. Never test a migration against production merely because the CLI happens to be linked to it.

## Optional branches

Finish the core wizard before adding integrations that the application does not need at launch:

- [Mobile login verification with deep links](../Application%20Development/mobile-auth-deep-linking.md)
- [Authentication providers](../Application%20Development/authentication-coverage.mdx#supported-social-oauthoidc-providers)
- [Stripe setup](../Billing/stripe.md)
- [SEO, metadata, and analytics](../Marketing-and-Analytics/seo-and-analytics.md)

Start with [Before you begin](./hosted-setup/01-before-you-begin.md).
