Skip to main content

Environment Variables

Configuration options for LusterCMS.

Required Variables

VariableDescriptionExample
DATABASE_URLPostgreSQL connectionpostgresql://user:pass@host:5432/db
SECRET_KEYJWT signing keyRandom 32+ char string
REDIS_URLRedis connectionredis://localhost:6379

AI Configuration

VariableDescriptionDefault
OPENAI_API_KEYOpenAI API key-
ANTHROPIC_API_KEYAnthropic API key-
AI_PROVIDERDefault AI provideropenai
AI_MODELDefault modelgpt-4

Frontend

VariableDescriptionDefault
NEXT_PUBLIC_API_URLBackend API URLhttp://localhost:8000
NEXT_PUBLIC_WS_URLWebSocket URLws://localhost:4000

Security

VariableDescriptionDefault
CORS_ORIGINSAllowed origins*
JWT_EXPIRYToken expiry (seconds)900
RATE_LIMITRequests per minute60

Storage

VariableDescriptionDefault
UPLOAD_DIRLocal upload directory./uploads
S3_BUCKETS3 bucket name-
S3_REGIONS3 region-
S3_ACCESS_KEYS3 access key-
S3_SECRET_KEYS3 secret key-

Email

VariableDescriptionDefault
SMTP_HOSTSMTP server-
SMTP_PORTSMTP port587
SMTP_USERSMTP username-
SMTP_PASSWORDSMTP password-
FROM_EMAILSender email-

Platform Admin

VariableDescriptionDefault
SUPERADMIN_EMAILPlatform owner email-
SUPERADMIN_PASSWORDPlatform owner password-
Superadmin Account

Set these variables to create a superadmin account on startup. The superadmin has full access to all organizations, AI credits management, and platform settings.

Demo Mode

VariableDescriptionDefault
DEMO_MODEEnable demo seedingfalse
DEMO_ADMIN_EMAILDemo user emaildemo@lustercms.com
DEMO_ADMIN_PASSWORDDemo user passwordDemo2025!

LUSTE Token

VariableDescriptionDefault
LUSTE_TOKEN_ADDRESSToken contract-
LUSTE_BRIDGE_ADDRESSBridge contract-
BASE_RPC_URLBase RPC endpoint-

Example .env

# Database
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/lustercms

# Security
SECRET_KEY=your-very-long-random-secret-key-here

# Redis
REDIS_URL=redis://localhost:6379

# AI
OPENAI_API_KEY=sk-...

# Frontend
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_WS_URL=ws://localhost:4000

# Platform Superadmin (full access to everything)
SUPERADMIN_EMAIL=your@email.com
SUPERADMIN_PASSWORD=your-secure-password

# LUSTE Token (optional)
LUSTE_TOKEN_ADDRESS=0xF320d3e7A4841F4a3052316bf04dB5B84C5b25C2
LUSTE_BRIDGE_ADDRESS=0x0E2557e51385f053ee1B1Ce29bc394F0E28752f8