Files
claim-guard-be/.env.example
2025-08-22 19:34:54 +07:00

179 lines
4.2 KiB
Plaintext

# =================================
# APPLICATION CONFIGURATION
# =================================
# Environment mode: development, staging, production
NODE_ENV=development
# Application port
PORT=3000
# Application host (for binding)
HOST=localhost
# Application base URL (for CORS and other purposes)
APP_URL=http://localhost:3000
# =================================
# DATABASE CONFIGURATION
# =================================
# PostgreSQL Database URL
# Format: postgresql://username:password@host:port/database_name
DATABASE_URL=postgresql://username:password@localhost:5432/claim_guard
# Database connection pool settings
DB_POOL_MIN=2
DB_POOL_MAX=10
# =================================
# CORS CONFIGURATION
# =================================
# Allowed origins for CORS (comma-separated)
# Use * for allow all origins (NOT recommended for production)
# Examples:
# - Development: http://localhost:3000,http://localhost:3001
# - Production: https://yourdomain.com,https://www.yourdomain.com
CORS_ORIGINS=http://localhost:3000,http://localhost:3001,http://localhost:8080
# Allowed methods for CORS (comma-separated)
CORS_METHODS=GET,HEAD,PUT,PATCH,POST,DELETE,OPTIONS
# Allowed headers for CORS (comma-separated)
CORS_HEADERS=Content-Type,Accept,Authorization,X-Requested-With
# Allow credentials in CORS requests
CORS_CREDENTIALS=true
# =================================
# SECURITY CONFIGURATION
# =================================
# JWT Secret for authentication (generate strong secret for production)
JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
# JWT Token expiration time
JWT_EXPIRES_IN=24h
# JWT Refresh token expiration
JWT_REFRESH_EXPIRES_IN=7d
# API Rate limiting (requests per minute)
RATE_LIMIT_MAX=100
# =================================
# LOGGING CONFIGURATION
# =================================
# Log level: error, warn, info, debug, verbose
LOG_LEVEL=info
# Log format: json, simple
LOG_FORMAT=simple
# Enable request logging
LOG_REQUESTS=true
# =================================
# FILE UPLOAD CONFIGURATION
# =================================
# Maximum file size for uploads (in bytes)
# 10MB = 10485760, 50MB = 52428800
MAX_FILE_SIZE=10485760
# Allowed file types for upload (comma-separated)
ALLOWED_FILE_TYPES=.xlsx,.xls,.csv
# Upload directory path
UPLOAD_DIR=./uploads
# =================================
# CACHE CONFIGURATION
# =================================
# Redis URL for caching (optional)
# REDIS_URL=redis://localhost:6379
# Cache TTL in seconds (default: 1 hour)
CACHE_TTL=3600
# =================================
# EMAIL CONFIGURATION (Optional)
# =================================
# SMTP configuration for sending emails
# SMTP_HOST=smtp.gmail.com
# SMTP_PORT=587
# SMTP_SECURE=false
# SMTP_USER=your-email@gmail.com
# SMTP_PASS=your-email-password
# Email from address
# EMAIL_FROM=noreply@yourdomain.com
# =================================
# THIRD-PARTY INTEGRATIONS
# =================================
# External API keys
# EXTERNAL_API_KEY=your-api-key
# EXTERNAL_API_URL=https://api.external-service.com
# =================================
# DEVELOPMENT SETTINGS
# =================================
# Enable API documentation (Swagger)
ENABLE_DOCS=true
# Enable debug mode
DEBUG=true
# Enable database logging
DB_LOGGING=true
# =================================
# PRODUCTION SETTINGS
# =================================
# When NODE_ENV=production, ensure these are set:
# - Strong JWT_SECRET
# - Specific CORS_ORIGINS (not *)
# - DB_LOGGING=false
# - DEBUG=false
# - LOG_LEVEL=warn or error
# Health check endpoint settings
HEALTH_CHECK_ENABLED=true
# Request timeout in milliseconds
REQUEST_TIMEOUT=30000
# =================================
# ICD SPECIFIC CONFIGURATION
# =================================
# Path to ICD data files
ICD9_FILE_PATH=./test/[PUBLIC] ICD-9CM e-klaim.xlsx
ICD10_FILE_PATH=./test/[PUBLIC] ICD-10 e-klaim.xlsx
# ICD import batch size
ICD_IMPORT_BATCH_SIZE=1000
# =================================
# MONITORING & METRICS
# =================================
# Enable application metrics
METRICS_ENABLED=true
# Metrics endpoint path
METRICS_PATH=/metrics
# Enable health check endpoint
HEALTH_CHECK_PATH=/health
OPENAI_API_KEY=xxxxxx
OPENAI_API_MODEL=text-embedding-ada-002