Documentation
Environment Reference
Consolidated variable reference for deployment modes, packaging modes, and optional integrations.
Core Web App Variables
| Variable | Required | Notes |
|---|---|---|
DATABASE_MODE | Yes | supabase or sqlite |
PACKAGER_MODE | Yes | github or local |
NEXT_PUBLIC_AZURE_AD_CLIENT_ID | Yes | Entra app client ID |
AZURE_AD_CLIENT_SECRET | Yes* | AZURE_CLIENT_SECRET is also supported |
NEXT_PUBLIC_URL | Yes | Public app URL |
Mode-Specific Variables
| Mode | Required Variables |
|---|---|
| Supabase DB | NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY, SUPABASE_SERVICE_ROLE_KEY |
| SQLite DB | PACKAGER_API_KEY (with local packager), optional DATABASE_PATH |
| GitHub Packager | GITHUB_PAT, GITHUB_OWNER, GITHUB_WORKFLOWS_REPO, optional GITHUB_REPO, GITHUB_REF, GITHUB_WORKFLOW_FILE, CALLBACK_SECRET |
| Local Packager | PACKAGER_MODE=local plus shared PACKAGER_API_KEY strategy |
Packager Service Variables
| Variable | Use |
|---|---|
AZURE_CLIENT_ID / AZURE_CLIENT_SECRET | Required for Graph and Intune operations |
INTUNEGET_API_URL + PACKAGER_API_KEY | API mode (recommended for sqlite web mode) |
SUPABASE_URL + SUPABASE_SERVICE_ROLE_KEY | Supabase mode |
POLL_INTERVAL, STALE_JOB_TIMEOUT | Polling and stale-claim behavior |
Validation Order
Confirm database mode first, then packager mode. Most setup issues come from mixing sqlite/supabase variables or missing packager auth key alignment.