REFERENCE / INSTALLATION
Configuration
The setup script writes the installation’s .env. Keep credentials there and out of Git. These are the settings most likely to change when moving between Docker hosts and managed services.
DATABASE_URL
PostgreSQL connection used by the API and worker. Required when selecting external PostgreSQL.
DATABASE_URL_DIRECT
Direct migration connection when the runtime URL uses a pooler, including Neon pooled connections.
REDIS_URL
Redis connection used by queues and production auth rate limiting. Required when selecting external Redis.
API_BASE_URL
Public API origin, such as https://api.unearth.chat.
WEB_ORIGIN
Public platform origin, such as https://platform.unearth.chat.
API_INTERNAL_BASE_URL
Platform-to-API origin. Compose defaults to http://api:4000; set a private reachable URL for separate services.
EMAIL_TRANSPORT
SMTP by default. Production also supports Resend when its key is configured.
FIRECRAWL_API_KEY
Optional onboarding website research provider. Without it, those jobs report a configuration failure.
QUEUE_PREFIX
Per-installation queue namespace. Setup generates one to isolate shared Redis instances.
Choose service modes
./scripts/setup.sh development --external-postgres
./scripts/setup.sh development --external-redisExport the relevant URL before setup. The flags can be combined. Managed URLs must be reachable from the containers; localhost inside a container refers to that container.
Production requirements
Production setup requires HTTPS API_BASE_URL and WEB_ORIGIN, an EMAIL_FROM address, and a working SMTP or Resend transport. It generates the auth signing secret and enables secure cookies. Add an HTTPS gateway before exposing services publicly.
The repository README is the source for complete, current setup options.