Skip to content

Configuration Reference

All configuration is via environment variables. Copy .env.example to .env to get started.

Required

VariableDescription
ENCRYPTION_KEY32-byte hex key for encrypting sensitive data. Generate: openssl rand -hex 32
NOTIFIQ_SESSION_SECRET32-byte hex key for session signing. Generate: openssl rand -hex 32
APP_URLPublic URL of your Notifiq instance (e.g. https://notify.yourdomain.com)
POSTGRES_PASSWORDPostgreSQL password. Generate: openssl rand -hex 32

Redis

VariableDefaultDescription
DISABLE_QUEUEfalseSet to true to disable the BullMQ queue (for testing only)

Server

VariableDefaultDescription
PORT8080HTTP port the app listens on
NODE_ENVSet to production for production hardening
FORCE_HTTPSSet to true to enforce secure cookies behind a proxy

Required for email delivery and user invitation emails.

VariableDescription
SMTP_HOSTMail server hostname
SMTP_PORTPort (587 for STARTTLS, 465 for SSL)
SMTP_USERLogin username
SMTP_PASSWORDLogin password
SMTP_SECUREtrue to force TLS
SMTP_FROM_ADDRESSSender address. Supports "Name <email>" format

Security notes

  • Never use the default ENCRYPTION_KEY or NOTIFIQ_SESSION_SECRET values in production
  • Rotate NOTIFIQ_SESSION_SECRET to invalidate all active sessions
  • ENCRYPTION_KEY is used to encrypt stored credentials — do not change it after data has been written