# iios-service PORT=3200 DATABASE_URL="postgresql://iios:iios@localhost:5434/iios?schema=public" # Agent/session signing (reused AppTokenVerifier pattern) JWT_SECRET="dev-only-change-me" # Per-app HS256 secrets, JSON map keyed by appId (the `session` platform port) APP_SECRETS={"portal-demo":"dev-secret"} # Full-text message search (Meilisearch). Unset MEILI_URL → search is disabled (no-op). # MEILI_KEY must equal the meilisearch server's MEILI_MASTER_KEY (docker-compose default below). MEILI_URL="http://localhost:7700" MEILI_KEY="dev-meili-master-key" # Consumed by docker-compose's meilisearch service; keep in sync with MEILI_KEY. MEILI_MASTER_KEY="dev-meili-master-key" # BYO integration credentials at rest (Twilio SMS, SMTP): 32-byte base64 AES-256-GCM key. # Generate with: openssl rand -base64 32 IIOS_CRED_KEY="" # Orphaned-media garbage collection (uploaded-but-never-sent attachments). # Interval 0 = off; set e.g. 3600000 (hourly) in prod. Grace defaults to 24h. IIOS_MEDIA_GC_INTERVAL_MS=0 # Web Push (VAPID) for offline notifications. Unset VAPID_PUBLIC_KEY → push is disabled # (subscribe endpoint still stores subs, but WebPushDelivery returns 'failed' — no sends). # Generate a keypair with: npx web-push generate-vapid-keys VAPID_PUBLIC_KEY="" VAPID_PRIVATE_KEY="" VAPID_SUBJECT="mailto:dev@insignia"