⚙️Configuration Reference

Reference for AskGov configuration options and environment variables

AskGov uses environment variables for configuration, making it easy to deploy across different environments without code changes. This reference documents those configuration options.

circle-exclamation

Configuration Categories

  1. Core Application

  2. Database

  3. Authentication & Security

  4. Email Service

  5. Search Engine (Weaviate)

  6. Monitoring & Analytics

  7. Feature Flags (using Growthbook)

  8. Third-party Services

Core Application

Basic Settings

Variable
Required
Default
Description

NODE_ENV

Yes

development

Environment: development, staging, production

PORT

No

8080

Port for the application server

FRONTEND_URL

Yes

http://localhost:8080

Public URL of your AskGov instance

SESSION_SECRET

Yes

-

Secret key for session encryption (min 32 chars)

Example Configuration

Application Behavior

Variable
Required
Default
Description

SOME_CONFIG_HERE

Yes/No

100

Example: Maximum requests per window

Database

CockroachDB Configuration

Variable
Required
Default
Description

DATABASE_URL

Yes

-

PostgreSQL connection string

Connection String Format

Authentication & Security

OTP Configuration

Variable
Required
Default
Description

OTP_SECRET

Yes

Secreet used for generating OTP

CAPTCHA

Variable
Required
Default
Description

RECAPTCHA_SITE_KEY

If enabled

-

reCAPTCHA site key

RECAPTCHA_SECRET_KEY

If enabled

-

reCAPTCHA secret key

Email Service

SMTP Configuration

PostmanGovSG Configuration

Variable
Required
Default
Description

POSTMANGOVSG_API_KEY

If Postman

-

PostmanGovSG API key

POSTMANGOVSG_API_URL

No

Production URL

API endpoint

Search Engine (Weaviate)

Weaviate Connection

Variable
Required
Default
Description

WEAVIATE_INSTANCE

If enabled

-

Weaviate instance URL

WEAVIATE_API_KEY

If enabled

-

Weaviate API key

WEAVIATE_COHERE_CLASS

If enabled

-

Cohere class for embedding

Vectorization Configuration

Variable
Required
Default
Description

VECTORIZER_API_KEY

No

-

API key for vectorizer

Monitoring & Analytics

Application Monitoring

Variable
Required
Default
Description

DATADOG_CLIENT_TOKEN

If enabled

-

Datadog client token

Logging

Variable
Required
Default
Description

LOG_LEVEL

No

info

Level: debug, info, warn, error

Redis Cache

Variable
Required
Default
Description

REDIS_URL

Yes

-

Redis connection URL

Feature Flags

Feature flag is managed by growthbook.

Variable
Required
Default
Description

GROWTHBOOK_CLIENT_KEY

Yes

-

Client SDK key

Environment-Specific Configurations

Development Environment


circle-check

Last updated

Was this helpful?