2025-12-01 15:30:04 +09:00
|
|
|
# =============================================================================
|
|
|
|
|
# Customer Portal - Development Environment
|
|
|
|
|
# =============================================================================
|
2025-12-11 18:47:24 +09:00
|
|
|
# Copy to .env in project root OR to apps/portal/.env.development and
|
|
|
|
|
# apps/bff/.env.development for per-app configuration.
|
|
|
|
|
#
|
|
|
|
|
# Most settings have sensible defaults - only required values and
|
|
|
|
|
# dev-specific overrides are listed here.
|
2025-12-01 15:30:04 +09:00
|
|
|
# =============================================================================
|
|
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
2025-12-11 18:47:24 +09:00
|
|
|
# REQUIRED - No defaults, must be set
|
2025-12-01 15:30:04 +09:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
DATABASE_URL=postgresql://dev:dev@localhost:5432/portal_dev?schema=public
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Generate with: openssl rand -base64 32
|
|
|
|
|
JWT_SECRET=HjHsUyTE3WhPn5N07iSvurdV4hk2VEkIuN+lIflHhVQ=
|
2025-12-01 15:30:04 +09:00
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
# Frontend (Next.js) - Browser-exposed variables
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
NEXT_PUBLIC_APP_NAME="Customer Portal (Dev)"
|
|
|
|
|
NEXT_PUBLIC_APP_VERSION=1.0.0-dev
|
|
|
|
|
NEXT_PUBLIC_API_BASE=http://localhost:4000
|
|
|
|
|
NEXT_PUBLIC_ENABLE_DEVTOOLS=true
|
|
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
2025-12-11 18:47:24 +09:00
|
|
|
# CORS - Required for direct browser calls to BFF
|
2025-12-01 15:30:04 +09:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
CORS_ORIGIN=http://localhost:3000
|
|
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
2025-12-11 18:47:24 +09:00
|
|
|
# Dev Overrides (relaxed limits, verbose logging)
|
2025-12-01 15:30:04 +09:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
LOG_LEVEL=debug
|
2025-12-01 15:30:04 +09:00
|
|
|
RATE_LIMIT_LIMIT=1000
|
|
|
|
|
AUTH_RATE_LIMIT_LIMIT=10
|
|
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
2025-12-11 18:47:24 +09:00
|
|
|
# External Services - Fill in when testing integrations
|
2025-12-01 15:30:04 +09:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# WHMCS (Development/Sandbox)
|
2025-12-01 15:30:04 +09:00
|
|
|
WHMCS_DEV_BASE_URL=
|
|
|
|
|
WHMCS_DEV_API_IDENTIFIER=
|
|
|
|
|
WHMCS_DEV_API_SECRET=
|
|
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Salesforce
|
2025-12-01 15:30:04 +09:00
|
|
|
SF_LOGIN_URL=
|
|
|
|
|
SF_CLIENT_ID=
|
|
|
|
|
SF_USERNAME=
|
2025-12-11 18:47:24 +09:00
|
|
|
SF_PRIVATE_KEY_PATH=./secrets/sf-private.key
|
2025-12-01 15:30:04 +09:00
|
|
|
|
|
|
|
|
# Freebit SIM Management
|
|
|
|
|
FREEBIT_BASE_URL=
|
|
|
|
|
FREEBIT_OEM_KEY=
|
2025-12-11 18:47:24 +09:00
|
|
|
|
|
|
|
|
# SendGrid Email
|
|
|
|
|
SENDGRID_API_KEY=
|
2025-12-01 15:30:04 +09:00
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
2025-12-11 18:47:24 +09:00
|
|
|
# DEFAULTS - Uncomment only if you need to override
|
2025-12-01 15:30:04 +09:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Core (defaults shown)
|
|
|
|
|
# NODE_ENV=development
|
|
|
|
|
# APP_NAME=customer-portal-bff
|
|
|
|
|
# APP_BASE_URL=http://localhost:3000
|
|
|
|
|
# BFF_PORT=4000
|
|
|
|
|
# REDIS_URL=redis://localhost:6379
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Security (defaults shown)
|
|
|
|
|
# JWT_EXPIRES_IN=7d
|
|
|
|
|
# BCRYPT_ROUNDS=14
|
|
|
|
|
# TRUST_PROXY=false
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Rate Limiting (production defaults - dev overrides above)
|
|
|
|
|
# RATE_LIMIT_TTL=60
|
|
|
|
|
# AUTH_RATE_LIMIT_TTL=900
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Freebit (defaults shown)
|
|
|
|
|
# FREEBIT_OEM_ID=PASI
|
|
|
|
|
# FREEBIT_TIMEOUT=30000
|
|
|
|
|
# FREEBIT_RETRY_ATTEMPTS=3
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Email (defaults shown)
|
|
|
|
|
# EMAIL_ENABLED=true
|
|
|
|
|
# EMAIL_USE_QUEUE=true
|
|
|
|
|
# EMAIL_FROM=no-reply@example.com
|
|
|
|
|
# EMAIL_FROM_NAME=Assist Solutions
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Portal (defaults shown)
|
|
|
|
|
# PORTAL_PRICEBOOK_ID=01sTL000008eLVlYAM
|
|
|
|
|
# PORTAL_PRICEBOOK_NAME=Portal
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Salesforce Events (defaults shown)
|
|
|
|
|
# SF_EVENTS_ENABLED=false
|
|
|
|
|
# SF_EVENTS_REPLAY=LATEST
|
|
|
|
|
# SF_PUBSUB_ENDPOINT=api.pubsub.salesforce.com:7443
|
2025-12-01 15:30:04 +09:00
|
|
|
|
2025-12-11 18:47:24 +09:00
|
|
|
# Dev Bypasses - NEVER enable in production!
|
|
|
|
|
# DISABLE_CSRF=false
|
|
|
|
|
# DISABLE_RATE_LIMIT=false
|
|
|
|
|
# DISABLE_ACCOUNT_LOCKING=false
|
2026-02-03 18:28:38 +09:00
|
|
|
# SKIP_OTP=false # Skip OTP verification during login (dev only)
|