> ## Documentation Index
> Fetch the complete documentation index at: https://docs.streamly.watch/llms.txt
> Use this file to discover all available pages before exploring further.

# First Launch Checklist

> End-to-end checklist after deploy — Supabase, env, Resend, admin login, theme apply, catalog, and go-live checks.

Use this after [Quick Start](/getting-started/quick-start) or a production deploy.

## Infrastructure

* [ ] Fresh Supabase project created
* [ ] All `supabase/migrations/*.sql` applied in numeric order
* [ ] `TENANT_SECRETS_MASTER_KEY` and `STREAMLY_CRON_SECRET` generated
* [ ] Env configured (`.env.local`, host secrets, or Wrangler secrets)
* [ ] App reachable on your public URL
* [ ] Cloudflare buyers: own KV ids + routes personalized; `ENABLE_DEMO` off

## Operator access (production)

* [ ] `ENVATO_PERSONAL_TOKEN` set
* [ ] `RESEND_API_KEY` + `STREAMLY_FROM_EMAIL` set (**required** for magic-link login)
* [ ] Open `/admin/login`, activate with purchase code, complete email verify if prompted (`/verify-email`)
* [ ] Complete `/admin/onboarding` if shown
* [ ] Confirm Overview loads at `/admin/overview`
* [ ] Demo flags (`ENABLE_DEMO` / `ADMIN_ALLOW_DEMO_LICENSE`) **disabled** on real installs

## Branding & themes

* [ ] Open `/admin/themes` and **Apply** a built-in theme
* [ ] Optionally preview with `/?__theme_preview=<themeId>` (operator session)
* [ ] Customize logos, colors, fonts, SEO in `/admin/landing-page`
* [ ] Confirm storefront chrome matches the active theme (`data-storefront-theme`)

## Catalog & playback

* [ ] Add or import at least one movie/show in `/admin/catalog`
* [ ] Attach a content source (URL/HLS/embed or `managed` + [Addons](/admin-dashboard/addons))
* [ ] Optional: `pnpm run sync:tmdb` for bulk metadata hydrate
* [ ] Verify `/title/[slug]` and watch routes as a viewer

## Billing (optional)

* [ ] Install Stripe in `/admin/plugins` (`publishableKey`, `secretKey`, `webhookSecret`)
* [ ] Configure plans in `/admin/plans`
* [ ] Set webhook to `/api/webhooks/stripe` (+ Connect secret if used)

## Go-live

* [ ] Set production `NEXT_PUBLIC_APP_URL` / `PLATFORM_HOST` / API base
* [ ] Configure custom domain ([Domain](/configuration/domain))
* [ ] Schedule jobs (Cloudflare cron or Node `POST /api/internal/jobs/run`)
* [ ] Review legal pages ([Legal & Marketing](/viewer/legal-and-marketing))
* [ ] Check `/admin/inbox` for contact-form messages after go-live

## Related

* [Quick Start](/getting-started/quick-start)
* [Authentication Flow](/authentication/authentication-flow)
* [Themes](/admin-dashboard/themes)
* [Brand & Experience](/admin-dashboard/brand-experience)
* [General FAQ](/faq/general-faq)
