Page Navigation

epress world protocol

Open

Collapsed while browsing epress node docs.

epress node Configuration

Configuration is split between infrastructure environment variables and application settings stored in database.

Infrastructure Variables (.env as Source of Truth)

Implementation reference: .env

KeyDefaultPurpose
EPRESS_SERVER_HOST0.0.0.0Server listening address
EPRESS_SERVER_PORT8544API server port
EPRESS_CLIENT_PORT8543Client server port
EPRESS_DATABASE_CLIENTsqlite3Database client (sqlite3/pg/mysql...)
EPRESS_DATABASE_CONNECTION./data/epress.sqliteDatabase connection string or sqlite path
EPRESS_API_URLhttp://localhost:8544Frontend proxy target for API calls
EPRESS_DEV_DEBUGfalseEnable pretty debug output
EPRESS_DEV_LOG_LEVELinfoLog level (error|warn|info|debug)
EPRESS_LOG_FILE(empty)Optional log file path

Recommended Override Strategy

Keep repository .env unchanged and place environment-specific overrides in .env.local. This aligns with the project workflow for pulling upstream updates without local config conflicts.

# .env.local example
EPRESS_SERVER_PORT=18544
EPRESS_CLIENT_PORT=18543
EPRESS_API_URL=http://localhost:18544

Application-Level Settings

Runtime product settings are persisted in the settings table and include follow/comment toggles, theme/language, RSS, mail transport, and push notification keys.

  • Settings are initialized during /api/install seed stage.
  • GraphQL settings query/mutations expose and update these values.
  • Sensitive fields are conditionally exposed depending on auth context.