# ─── Database (Supabase pooled connection) ──────────────────── DATABASE_URL="postgresql://postgres.:@aws-0-us-east-1.pooler.supabase.com:6543/postgres" # ─── Object Storage (Supabase Storage, S3-compatible) ───────── STORAGE_ENDPOINT="https://.supabase.co/storage/v1/s3" STORAGE_REGION="us-east-1" STORAGE_ACCESS_KEY="" STORAGE_SECRET_KEY="" STORAGE_BUCKET="echos-ocr" # ─── Upstash QStash (job queue) ─────────────────────────────── QSTASH_TOKEN="" QSTASH_CURRENT_SIGNING_KEY="" QSTASH_NEXT_SIGNING_KEY="" # ─── Vercel AI Gateway ──────────────────────────────────────── AI_GATEWAY_API_KEY="" # ─── Auth.js (required — generate with: npx auth secret) ───── AUTH_SECRET="" AUTH_URL="https://echoocr.yourdomain.com" # ─── OIDC SSO (optional) ────────────────────────────────────── AUTHENTIK_ISSUER="" AUTHENTIK_CLIENT_ID="" AUTHENTIK_CLIENT_SECRET="" # ─── Brevo transactional email ──────────────────────────────── BREVO_API_KEY="" EMAIL_FROM_NAME="Echo OCR" EMAIL_FROM_ADDRESS="mars@noreply.stillwell.cloud" # ─── Vercel Cron Secret ──────────────────────────────────────── # Vercel auto-sets this on Pro. Used to authenticate cron job requests. CRON_SECRET="" # ─── Public site URL (used for OG metadata, canonical links) ─ NEXT_PUBLIC_SITE_URL="https://echoocr.com" # ─── Environment indicator ──────────────────────────────────── NEXT_PUBLIC_ENV=""