Web (web/.env)
Fed to the Next.js app. Variables prefixed with NEXT_PUBLIC_ are exposed to the browser.
* You need at least one AI provider key for tracking to work. Configure providers per-brand in the dashboard.
Server (server/.env)
Fed to the Express API + workers.
Tips for production
- Mark secrets as sensitive — on Vercel, toggle the Sensitive flag on every secret env var. Once set, the value is write-only and can’t be read back from the UI.
- Rotate
SUPABASE_SERVICE_ROLE_KEYandCRON_SECRETquarterly as a hygiene practice - Use a different Supabase project for each environment (dev / staging / prod). Don’t share databases across environments — RLS bypasses make it easy to corrupt prod data with a misconfigured dev pointer
Continue: Upgrading
How to upgrade your self-hosted instance to a new release.