The public repository is documented around open-core self-host usage.
Reference templates:
- ../.env.example
- ../apps/api/.env.example
- ../apps/approval-ui/.env.local.example
- ../deploy/env/open-core.self-host.root.env.example
- ../deploy/env/open-core.self-host.api.env.example
- ../deploy/env/open-core.self-host.ui.env.example
Required:
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/approva?schema=public
APPROVA_RUNTIME_MODE=open-core
APPROVA_SELF_HOST_MODE=true
APPROVA_DEFAULT_ORGANIZATION_NAME="Default Organization"
APPROVA_DEFAULT_ORGANIZATION_SLUG=defaultRequired:
PORT=4000
APPROVAL_UI_BASE_URL=http://localhost:3000
APPROVAL_ACCESS_TOKEN_SECRET=change-me-approval-access
WEBHOOK_SIGNING_SECRET=change-me-webhook
PASSKEY_RP_NAME=Approva
PASSKEY_RP_ID=localhost
PASSKEY_EXPECTED_ORIGINS=http://localhost:3000Useful optional settings:
APPROVA_API_ALLOWED_ORIGINSAPPROVA_RATE_LIMIT_*APPROVA_INTEGRATION_ENCRYPTION_KEYAPPROVA_EMAIL_FROMAPPROVA_RESEND_API_KEYAPPROVA_SLACK_BOT_TOKENAPPROVA_SLACK_CHANNEL_IDAPPROVA_SENTRY_DSN
Required:
NEXT_PUBLIC_API_BASE_URL=http://localhost:4000
APPROVA_RUNTIME_MODE=open-core
APPROVA_SELF_HOST_MODE=trueUseful optional settings:
APPROVA_INTERNAL_API_BASE_URLNEXT_PUBLIC_SAMPLE_APPROVER_EMAILNEXT_PUBLIC_APPROVA_RELEASEAPPROVA_EMAIL_FROMAPPROVA_RESEND_API_KEY
- Open-core is the default runtime when no valid mode is configured.
- For non-localhost deployments, set final HTTPS origins before testing passkeys.