# Server Configuration PORT=8001 NODE_ENV=development # Database DATABASE_PATH=./db/navidocs.db # Meilisearch Configuration # Host: Meilisearch server URL (used by both backend and frontend) MEILISEARCH_HOST=http://127.0.0.1:7700 # Master Key: Administrative key for full Meilisearch access (backend only) MEILISEARCH_MASTER_KEY=your-meilisearch-key-here # Index Name: Meilisearch index containing NaviDocs pages/search data MEILISEARCH_INDEX_NAME=navidocs-pages # Search Key: Public search-only key (can be safely exposed to frontend) MEILISEARCH_SEARCH_KEY=your-search-key-here # Search API Configuration (used by /api/v1/search endpoint) # Host: Meilisearch server URL (alternative name, same as MEILISEARCH_HOST) MEILI_HOST=http://127.0.0.1:7700 # API Key: Authentication key for search requests (uses MEILISEARCH_MASTER_KEY if not set) MEILI_KEY=your-meilisearch-key-here # Index: Search index name (uses MEILISEARCH_INDEX_NAME if not set) MEILI_INDEX=navidocs-pages # Redis (for BullMQ) REDIS_HOST=127.0.0.1 REDIS_PORT=6379 # Authentication # Generate with: openssl rand -hex 32 JWT_SECRET=your-jwt-secret-here-change-in-production JWT_EXPIRES_IN=15m # System Settings Encryption # Generate with: node -e "console.log(require('crypto').randomBytes(32).toString('hex'))" SETTINGS_ENCRYPTION_KEY=your-settings-encryption-key-here # System Administrators (comma-separated emails) SYSTEM_ADMIN_EMAILS=admin@example.com # File Upload MAX_FILE_SIZE=50000000 UPLOAD_DIR=./uploads ALLOWED_MIME_TYPES=application/pdf # OCR OCR_LANGUAGE=eng OCR_CONFIDENCE_THRESHOLD=0.7 # Remote OCR Worker USE_REMOTE_OCR=true OCR_WORKER_URL=https://your-ocr-worker-url-here OCR_WORKER_TIMEOUT=300000 # Rate Limiting RATE_LIMIT_WINDOW_MS=900000 RATE_LIMIT_MAX_REQUESTS=100