Appearance
Configuration Reference
All configuration is via environment variables. Copy .env.example to .env to get started.
Required
| Variable | Description |
|---|---|
ENCRYPTION_KEY | 32-byte hex key for encrypting sensitive data. Generate: openssl rand -hex 32 |
NOTIFIQ_SESSION_SECRET | 32-byte hex key for session signing. Generate: openssl rand -hex 32 |
APP_URL | Public URL of your Notifiq instance (e.g. https://notify.yourdomain.com) |
POSTGRES_PASSWORD | PostgreSQL password. Generate: openssl rand -hex 32 |
Redis
| Variable | Default | Description |
|---|---|---|
DISABLE_QUEUE | false | Set to true to disable the BullMQ queue (for testing only) |
Server
| Variable | Default | Description |
|---|---|---|
PORT | 8080 | HTTP port the app listens on |
NODE_ENV | — | Set to production for production hardening |
FORCE_HTTPS | — | Set to true to enforce secure cookies behind a proxy |
SMTP (recommended)
Required for email delivery and user invitation emails.
| Variable | Description |
|---|---|
SMTP_HOST | Mail server hostname |
SMTP_PORT | Port (587 for STARTTLS, 465 for SSL) |
SMTP_USER | Login username |
SMTP_PASSWORD | Login password |
SMTP_SECURE | true to force TLS |
SMTP_FROM_ADDRESS | Sender address. Supports "Name <email>" format |
Security notes
- Never use the default
ENCRYPTION_KEYorNOTIFIQ_SESSION_SECRETvalues in production - Rotate
NOTIFIQ_SESSION_SECRETto invalidate all active sessions ENCRYPTION_KEYis used to encrypt stored credentials — do not change it after data has been written