2026-10-19 14:42:59 +00:00
|
|
|
# ==============================================================================
|
|
|
|
|
# Core Database & Application Settings
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# PostgreSQL connection string. (Required)
|
2026-10-19 14:59:10 +00:00
|
|
|
DB_HOST=16.113.106.152
|
|
|
|
|
DB_PORT=5432
|
|
|
|
|
DB_USER=vignesh
|
|
|
|
|
DB_PASSWORD=vignesh_secret_pass_2026
|
|
|
|
|
DB_NAME=getcito
|
|
|
|
|
DATABASE_URL=postgres://vignesh:vignesh_secret_pass_2026@16.113.106.152:5432/getcito
|
2026-10-19 14:42:59 +00:00
|
|
|
|
|
|
|
|
# Deployment mode: local, demo, whitelabel, or cloud. (Required)
|
|
|
|
|
DEPLOYMENT_MODE=local
|
|
|
|
|
|
|
|
|
|
# Client-visible copy of DEPLOYMENT_MODE. (Optional)
|
|
|
|
|
VITE_DEPLOYMENT_MODE=local
|
|
|
|
|
|
|
|
|
|
# Session cookie encryption secret. (Required)
|
|
|
|
|
BETTER_AUTH_SECRET=your_secret_here
|
|
|
|
|
|
|
|
|
|
# Public base URL of the web app. (Optional)
|
|
|
|
|
APP_URL=http://localhost:3000
|
|
|
|
|
|
|
|
|
|
# Set to any value to disable telemetry. (Optional)
|
|
|
|
|
DISABLE_TELEMETRY=1
|
|
|
|
|
|
|
|
|
|
# Fallback cadence (hours). Default is 24. (Optional)
|
|
|
|
|
DEFAULT_DELAY_HOURS=24
|
|
|
|
|
|
|
|
|
|
# Demo email. (Optional)
|
|
|
|
|
VITE_DEMO_EMAIL=team@getcito.com
|
|
|
|
|
|
|
|
|
|
# Demo password. (Optional)
|
|
|
|
|
VITE_DEMO_PASSWORD=your_secret_here
|
|
|
|
|
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Scrapers & LLM Providers
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Comma-separated model:provider[:version][:online] entries. (Required)
|
|
|
|
|
# Example: chatgpt:brightdata:online,google-ai-mode:brightdata:online
|
|
|
|
|
SCRAPE_TARGETS=chatgpt:brightdata:online,google-ai-mode:brightdata:online
|
|
|
|
|
|
|
|
|
|
# BrightData API token. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
BRIGHTDATA_API_TOKEN=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# Olostep API key. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
OLOSTEP_API_KEY=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# Oxylabs Web Scraper API username. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
OXYLABS_USERNAME=change_me
|
|
|
|
|
|
|
|
|
|
# Oxylabs Web Scraper API password. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
OXYLABS_PASSWORD=your_secret_here
|
|
|
|
|
|
|
|
|
|
# DataForSEO account login. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
DATAFORSEO_LOGIN=change_me
|
|
|
|
|
|
|
|
|
|
# DataForSEO account password. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
DATAFORSEO_PASSWORD=your_secret_here
|
|
|
|
|
|
|
|
|
|
# OpenRouter API key. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
OPENROUTER_API_KEY=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# OpenAI API key. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
OPENAI_API_KEY=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# Anthropic API key. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
ANTHROPIC_API_KEY=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# Mistral API key. (Required if referenced in SCRAPE_TARGETS)
|
|
|
|
|
MISTRAL_API_KEY=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# White-label & Auth0 (Required for whitelabel mode)
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Auth0 client ID. (Required for whitelabel)
|
|
|
|
|
AUTH0_CLIENT_ID=change_me
|
|
|
|
|
|
|
|
|
|
# Auth0 client secret. (Required for whitelabel)
|
|
|
|
|
AUTH0_CLIENT_SECRET=your_secret_here
|
|
|
|
|
|
|
|
|
|
# Auth0 Management API domain. (Required for whitelabel)
|
|
|
|
|
AUTH0_MGMT_API_DOMAIN=change_me
|
|
|
|
|
|
|
|
|
|
# Auth0 tenant domain (used for whitelabel logout redirects). (Optional)
|
|
|
|
|
AUTH0_DOMAIN=change_me
|
|
|
|
|
|
|
|
|
|
# Auth0 API audience. (Optional)
|
|
|
|
|
AUTH0_AUDIENCE=change_me
|
|
|
|
|
|
|
|
|
|
# Auth0 OAuth scopes. (Optional)
|
|
|
|
|
AUTH0_SCOPE=change_me
|
|
|
|
|
|
|
|
|
|
# Auth0 subject claim granted admin access. (Optional)
|
|
|
|
|
ADMIN_AUTH0_SUB=change_me
|
|
|
|
|
|
|
|
|
|
# Comma-separated bearer tokens accepted by the admin API. (Optional)
|
|
|
|
|
ADMIN_API_KEYS=your_secret_here
|
|
|
|
|
|
|
|
|
|
# Application display name (e.g., 'Acme AI Search'). (Required for whitelabel)
|
|
|
|
|
VITE_APP_NAME="Acme AI Search"
|
|
|
|
|
|
|
|
|
|
# Application icon URL (must be an external URL, e.g., 'https://cdn.example.com/icon.png'). (Required for whitelabel)
|
|
|
|
|
VITE_APP_ICON=https://cdn.example.com/icon.png
|
|
|
|
|
|
|
|
|
|
# Application URL (e.g., 'https://ai.example.com/'). (Required for whitelabel)
|
|
|
|
|
VITE_APP_URL=http://localhost:3000
|
|
|
|
|
|
|
|
|
|
# Parent application name (e.g., 'Acme'). (Required for whitelabel)
|
|
|
|
|
VITE_APP_PARENT_NAME="Acme"
|
|
|
|
|
|
|
|
|
|
# Parent application URL (e.g., 'https://app.example.com/'). (Required for whitelabel)
|
|
|
|
|
VITE_APP_PARENT_URL=http://localhost:3000
|
|
|
|
|
|
|
|
|
|
# URL template for optimization with placeholders {brandId}, {prompt}, {webQuery}. (Required for whitelabel)
|
|
|
|
|
VITE_OPTIMIZATION_URL_TEMPLATE=https://app.example.com/optimize?org_id={brandId}&prompt={prompt}&web_query={webQuery}
|
|
|
|
|
|
|
|
|
|
# Redirect URL template (with {brandId} placeholder) for sending users back to the parent app after onboarding. (Optional)
|
|
|
|
|
VITE_ONBOARDING_REDIRECT_URL_TEMPLATE=https://app.example.com/onboarding/{brandId}
|
|
|
|
|
|
|
|
|
|
# Auth0 domain exposed to the client. (Optional)
|
|
|
|
|
VITE_AUTH0_DOMAIN=change_me
|
|
|
|
|
|
|
|
|
|
# Auth0 client ID exposed to the client. (Optional)
|
|
|
|
|
VITE_AUTH0_CLIENT_ID=change_me
|
|
|
|
|
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Additional Features & Analytics
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Comma-separated domains added as default brands. (Optional)
|
|
|
|
|
DEFAULT_BRAND_DOMAINS=example.com
|
|
|
|
|
|
|
|
|
|
# Environment name reported to Sentry (e.g. production). (Optional)
|
|
|
|
|
ENVIRONMENT=development
|
|
|
|
|
|
|
|
|
|
# Sentry DSN for server-side error reporting. (Optional)
|
|
|
|
|
SENTRY_DSN=change_me
|
|
|
|
|
|
|
|
|
|
# Sentry org slug for sourcemap upload at build time. (Optional)
|
|
|
|
|
SENTRY_ORG=change_me
|
|
|
|
|
|
|
|
|
|
# Sentry project slug for sourcemap upload at build time. (Optional)
|
|
|
|
|
SENTRY_PROJECT=change_me
|
|
|
|
|
|
|
|
|
|
# Sentry auth token for sourcemap upload at build time. (Optional)
|
|
|
|
|
SENTRY_AUTH_TOKEN=your_secret_here
|
|
|
|
|
|
|
|
|
|
# Sentry DSN for browser error reporting. (Optional)
|
|
|
|
|
VITE_SENTRY_DSN=change_me
|
|
|
|
|
|
|
|
|
|
# PostHog project API key override. (Optional)
|
|
|
|
|
VITE_POSTHOG_KEY=your_api_key_here
|
|
|
|
|
|
|
|
|
|
# Plausible analytics domain. (Optional)
|
|
|
|
|
VITE_PLAUSIBLE_DOMAIN=change_me
|
|
|
|
|
|
|
|
|
|
# Microsoft Clarity project ID. (Optional)
|
|
|
|
|
VITE_CLARITY_PROJECT_ID=change_me
|
|
|
|
|
|
|
|
|
|
# Comma-separated chart color palette override. (Optional)
|
|
|
|
|
VITE_CHART_COLORS=#FF0000,#00FF00,#0000FF
|
|
|
|
|
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Marketing Site (www) Specific
|
|
|
|
|
# ==============================================================================
|
|
|
|
|
# Upstash Redis REST URL (www caching: status, GitHub stars/releases). (Optional)
|
|
|
|
|
UPSTASH_REDIS_REST_URL=change_me
|
|
|
|
|
|
|
|
|
|
# Upstash Redis REST token. (Optional)
|
|
|
|
|
UPSTASH_REDIS_REST_TOKEN=your_secret_here
|
|
|
|
|
|
|
|
|
|
# Upstash Redis endpoint. (Optional)
|
|
|
|
|
UPSTASH_REDIS_ENDPOINT=change_me
|
|
|
|
|
|
|
|
|
|
# Vercel Blob token (www competitor screenshots). (Optional)
|
|
|
|
|
BLOB_READ_WRITE_TOKEN=your_secret_here
|
|
|
|
|
|
|
|
|
|
# Override for the DBOS system database URL (read by the DBOS runtime). (Optional)
|
|
|
|
|
DBOS_SYSTEM_DATABASE_URL=change_me
|