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-redis

Export 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.