Skip to main content

Environment Variables

This is the minimum env baseline for local and server deployments.

Backend core

VariableDefaultPurpose
PORT4000Backend HTTP port
JWT_SECRETchange-me-super-secretJWT signing secret
JWT_EXPIRES_IN30dJWT expiration
APP_URLhttp://localhost:3000Public app URL
FRONTEND_ORIGINhttp://localhost:3000CORS allowed frontend origin
DATA_DIR/app/data in DockerSQLite data directory
UPLOADS_DIR/app/uploads in DockerAttachments directory
SQLITE_PATH/app/data/data.sqliteSQLite file path

Outbox worker

VariableDefaultPurpose
OUTBOX_WORKER_ENABLEDfalseEnable outbox worker loop
OUTBOX_WORKER_POLL_MS5000Poll interval
OUTBOX_WORKER_BATCH_SIZE20Max items per loop
OUTBOX_WORKER_MAX_ATTEMPTS5Retry cap
OUTBOX_WORKER_PROCESSING_TIMEOUT_MS300000Recover stale processing
OUTBOX_WORKER_RETRY_BASE_MS10000Retry backoff base
OUTBOX_WORKER_RETRY_MAX_MS300000Retry backoff max
OUTBOX_WORKER_ALERT_PENDING_THRESHOLD100Pending alert threshold
OUTBOX_WORKER_ALERT_OLDEST_PENDING_AGE_SECONDS900Oldest pending age threshold
OUTBOX_WORKER_ALERT_STUCK_PROCESSING_THRESHOLD1Stuck processing threshold
OUTBOX_WORKER_ALERT_FAILED_THRESHOLD1Failed events threshold

Frontend

VariableDefaultPurpose
VITE_API_URLhttp://localhost:4000API base URL

Extensions layer (Open Core override hook)

VariableDefaultPurpose
EXTENSIONS_DIRbackend/extensionsExtensions root
EXTENSIONS_OVERRIDES_FILEextensions/service-overrides.jsService override registry