Loading...
Loading...
All environment variables are validated at startup using Zod. Missing required variables cause the app to fail with a clear error message.
| Variable | Required | Default | Description |
|---|---|---|---|
| DATABASE_URL | Yes | — | PostgreSQL connection string (must have pgvector extension) |
| NEXTAUTH_SECRET | Yes | — | Session encryption key, min 32 characters |
| NEXTAUTH_URL | Yes | — | Public URL of your application |
| OPENROUTER_API_KEY | Yes | — | API key for OpenRouter LLM access |
| NODE_ENV | No | development | Runtime environment: development, production, test |
| PORT | No | 3000 | HTTP server port |
| LOG_LEVEL | No | info | Logging verbosity: debug, info, warn, error |
| Variable | Required | Default | Description |
|---|---|---|---|
| EMBEDDING_PROVIDER | No | Provider: google, openai, or ollama | |
| EMBEDDING_MODEL | No | — | Specific model name (auto-detected if omitted) |
| EMBEDDING_DIMENSIONS | No | 768 | Vector dimensions (must match DB schema) |
| GOOGLE_GENERATIVE_AI_API_KEY | No | — | Google Gemini API key (required for google provider) |
| OPENAI_API_KEY | No | — | OpenAI API key (required for openai provider) |
| OLLAMA_BASE_URL | No | — | Ollama server URL (default: http://localhost:11434) |
| Variable | Required | Default | Description |
|---|---|---|---|
| UPSTASH_REDIS_REST_URL | No | — | Upstash Redis REST URL (required in production) |
| UPSTASH_REDIS_REST_TOKEN | No | — | Upstash Redis REST token (required in production) |
| Variable | Required | Default | Description |
|---|---|---|---|
| CLOUDINARY_URL | No | — | Cloudinary connection URL |
| CLOUDINARY_CLOUD_NAME | No | — | Cloudinary cloud name |
| CLOUDINARY_API_KEY | No | — | Cloudinary API key |
| CLOUDINARY_API_SECRET | No | — | Cloudinary API secret |
| CLOUDINARY_UPLOAD_FOLDER | No | — | Upload folder prefix |
| Variable | Required | Default | Description |
|---|---|---|---|
| ENCRYPTION_MASTER_KEY | No | — | Field-level encryption key (min 32 chars, required in production) |
| CSRF_SECRET | No | NEXTAUTH_SECRET | CSRF token signing key |
| ALLOWED_ORIGINS | No | — | Comma-separated allowed CORS origins |
| CSP_CONNECT_SRC | No | — | Additional CSP connect-src domains |
| Variable | Required | Default | Description |
|---|---|---|---|
| AUTH_GITHUB_ID | No | — | GitHub OAuth App client ID |
| AUTH_GITHUB_SECRET | No | — | GitHub OAuth App client secret |
| AUTH_GOOGLE_ID | No | — | Google OAuth client ID |
| AUTH_GOOGLE_SECRET | No | — | Google OAuth client secret |
| Variable | Required | Default | Description |
|---|---|---|---|
| INNGEST_SIGNING_KEY | No | — | Inngest signing key for webhook verification |
| INNGEST_EVENT_KEY | No | — | Inngest event key |
| Variable | Required | Default | Description |
|---|---|---|---|
| LOG_ENDPOINT | No | — | Remote logging endpoint URL |
| DATABASE_READ_REPLICA_URL | No | — | Read replica connection string (falls back to DATABASE_URL) |
| DB_POOL_MAX | No | — | Max database connection pool size |
| RESEND_API_KEY | No | — | Resend email API key |
| RESEND_FROM_EMAIL | No | — | Sender email address |
| RESEND_TO_EMAIL | No | — | Default recipient email |
| NEXT_PUBLIC_ANALYTICS_HOST | No | — | Plausible analytics host |
| NEXT_PUBLIC_ANALYTICS_SCRIPT_URL | No | — | Plausible analytics script URL |
| FIREWORKS_API_KEY | No | — | Fireworks AI API key |