Connect KOLLEGE safely
Protected pages and APIs stay closed until authentication and persistence are configured. No demo identity or in-memory production fallback is enabled.
ClerkRequired
Postgres + HyperdriveRequired
StripeRequired for Premium
Cloudflare R2Configured
AI GatewayRequired for AI tools
Job runnerConfigured
Environment variables
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEYPublic Clerk browser keyCLERK_SECRET_KEYPrivate Clerk server keyDATABASE_URLPostgreSQL origin used by Hyperdrive and migration scriptsSTRIPE_SECRET_KEY / STRIPE_WEBHOOK_SECRET / STRIPE_PREMIUM_PRICE_IDPremium billing and verified subscription eventsHYPERDRIVE + DATABASE_URLPostgreSQL through Cloudflare HyperdriveKOLLEGE_MEDIA + CLOUDFLARE_R2_PUBLIC_URLPrivate drafts and approved public R2 mediaKOLLEGE_JOBS + CRON_SECRETCloudflare Queue dispatch with scheduled fallbackCLOUDFLARE_AI_GATEWAY_BASE_URL / TOKENCloudflare model routing for plans, drafts, and tutor chatNEXT_PUBLIC_APP_URL / KOLLEGE_PUBLIC_URLCanonical learner originKOLLEGE_ADMIN_URLCourse Studio and private backend originApply the generated Drizzle migration before opening authenticated flows. Staff roles are stored in KOLLEGE Postgres, not trusted from browser input.