Configuration


Central Set is primarily configured using environment variables (.env). This page documents the core and most commonly required settings to get the platform running in development or production.

πŸ’‘ Tip: You do not need to configure everything. A minimal .env is usually enough to start.


Minimal Required Configuration

The following variables are required for any Central Set instance (if not set, defaults are used):

  BASE_URL=http://localhost:4444
HTTP_PORT=4444

DB_DRIVER_NAME=sqlite3
DB_DSN=database/ADMIN.db

JWT_SECRET_KEY=change-me
COOKIE_SECRET_KEY=change-me
SECRET_KEY=change-me
  

These define:

  • Where the API/UI is exposed
  • How Central Set connects to its admin database
  • How authentication tokens and cookies are secured

Server & Base URL

  BASE_URL=http://localhost:4444
HTTP_PORT=4444
  
VariableDescription
BASE_URLPublic base URL used for redirects, links, and tokens
HTTP_PORTPort the HTTP server listens on

Authentication (Admin Login)

Central Set supports basic authentication for the initial admin access.

  BASIC_AUTH_USERNAME=root
BASIC_AUTH_HASHED_PASSWORD=$2a$10$...
  
  • Password must be bcrypt-hashed
  • Used mainly for bootstrap / admin scenarios

Security & Tokens

  JWT_SECRET_KEY=mhaitpm4v3mesosefepyupo6qzpbvidc
COOKIE_SECRET_KEY=f2rkbev2yxhk5viz77ok4rxfip6npjpm
SECRET_KEY=openssl-generated-hex
ALGORITHM=HS256
TOKEN_EXPIRE_HOURS=1440
  
VariableDescription
JWT_SECRET_KEYSigns API access tokens
COOKIE_SECRET_KEYEncrypts session cookies
SECRET_KEYInternal cryptographic key
ALGORITHMJWT signing algorithm
TOKEN_EXPIRE_HOURSToken expiration time

⚠️ Always change these values in production.


Database Configuration

SQLite (Default)

  DB_DRIVER_NAME=sqlite3
DB_DSN=database/ADMIN.db
  

PostgreSQL Example

  DB_DRIVER_NAME=postgres
DB_DSN=user=postgres password=1234 dbname=ADMIN host=localhost port=5432 sslmode=disable
  
  DB_AUTOMIGRATE=false
  
VariableDescription
DB_DRIVER_NAMEDatabase driver (sqlite3, postgres, mysql, sqlserver)
DB_DSNDatabase connection string
DB_AUTOMIGRATEAutomatically migrate schema on startup

Static Files & Uploads

  STATIC=static
ASSETS=static/assets
UPLOAD=static/uploads
UPLOAD_SIZE=104857600
  

Controls:

  • Static UI assets
  • File uploads
  • Maximum upload size (bytes)

Feature Flags & Core Tables

  ENABLE_APP=app,role_app,role_app_menu,role_app_menu_table
ENABLE_USER=user_role,column_level_access,row_level_access

CORE_TABLES=lang,role,user,users,user_role,app,menu,table,menu_table,...
  

These variables control:

  • Which core modules are enabled
  • Which tables are managed by the system

Useful for lightweight or embedded deployments.


Logging & Auditing

  ACTIONS_NOT_TO_LOG=apps,menu,tables,chk_token
BROADCAST_CHANGES=create_update,create,update,delete,c,u,d
  

Controls what actions are:

  • Logged
  • Broadcast to clients (UI refresh, events)

Email & Notifications (Optional)

  SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=no.reply@gmail.com
SMTP_PASSWORD=******
SMTP_FROM=APP <no.reply@gmail.com>
  

Used for:

  • Notifications
  • Password resets
  • System alerts

Object Storage (S3 Compatible)

  USE_S3_STORAGE=false

S3_BUCKET=uploads
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_REGION=us-east-1
AWS_ENDPOINT=127.0.0.1:3000
S3_FORCE_PATH_STYLE=true
S3_SKIP_SSL_VERIFY=true
  

Supports:

  • AWS S3
  • MinIO
  • Other S3-compatible backends

ETLX & Data Pipelines

  ETLX_DEBUG_QUERY=true
  

Enables verbose query logging for ETLX workflows.


Export & Background Jobs

  EXPORT_CONN_TIMEOUT=3600
EXPORT_ENC_KEY=change-me
EXPORT_ADMIN_DB_TABLES=app,table,user_log,...
  

Used by:

  • Export jobs
  • Governance artifacts
  • Scheduled ETLX tasks

LDAP Authentication (Optional)

  USE_LDAP_AUTH=false
LDAP_URL=ldap://localhost:1389
LDAP_BIND_USER=cn=admin,dc=example,dc=com
LDAP_PASSWORD=admin
LDAP_BASE_DN=dc=example,dc=com
LDAP_SKIP_VERIFY_CERT=true
  

Allows Central Set to authenticate users against LDAP directories.


Arrow Flight (Analytics Sharing)

  ENABLE_ARROW_FLIGHT=false
ARROW_FLIGHT_ADDR=:8815
ARROW_FLIGHT_TLS=false
  

When enabled, Central Set exposes datasets via Apache Arrow Flight for:

  • Data science
  • BI tools
  • High-performance analytics

  • Change all secret keys
  • Enable HTTPS
  • Disable debug flags
  • Use PostgreSQL instead of SQLite
  • Enable row-level access rules
  • Configure backups

Summary

Central Set configuration is:

  • Environment-driven
  • Explicit and auditable
  • Flexible enough for embedded or large deployments

Most installations only require 10–15 variables to get started. The rest unlock advanced features when you need them.

Last updated 22 Jan 2026, 13:49 -01 . history

Was this page helpful?