Files
readur/.env.example

69 lines
2.3 KiB
Plaintext

# Core Configuration
# Option 1: Use DATABASE_URL (takes priority if set)
DATABASE_URL=postgresql://readur:readur_password@localhost:5432/readur
# Option 2: Use individual PostgreSQL environment variables
# (Only used if DATABASE_URL is not set)
# POSTGRES_HOST=localhost
# POSTGRES_PORT=5432
# POSTGRES_DB=readur
# POSTGRES_USER=readur
# POSTGRES_PASSWORD=readur_password
JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
SERVER_ADDRESS=0.0.0.0:8000
# Authentication Configuration
# Enable/disable local username/password authentication (default: true)
# When disabled, only OIDC authentication is available
ALLOW_LOCAL_AUTH=true
# Admin User Configuration (optional)
# IMPORTANT: These variables are only used when creating the initial admin user.
# If not set, the system will auto-generate a secure password on first startup.
#
# ADMIN_USERNAME: Custom admin username (default: "admin")
# ADMIN_PASSWORD: Set admin password (min 8 chars). If not set, a secure 24-character
# password will be auto-generated and displayed once at startup.
#
# SECURITY BEST PRACTICES:
# - For production: Leave ADMIN_PASSWORD unset to auto-generate secure password
# - For development: You can set a simple password for convenience
# - For automation: Use secrets management to inject ADMIN_PASSWORD securely
#
# Examples:
# ADMIN_USERNAME=superadmin
# ADMIN_PASSWORD=MySecureP@ssw0rd123!
#
# To reset admin password later, run: readur reset-admin-password
# OIDC Configuration (optional - see docs/oidc-setup.md for details)
# OIDC_ENABLED=true
# OIDC_CLIENT_ID=your-client-id
# OIDC_CLIENT_SECRET=your-client-secret
# OIDC_ISSUER_URL=https://accounts.google.com
# OIDC_REDIRECT_URI=https://your-domain.com/api/auth/oidc/callback
# OIDC_AUTO_REGISTER=true
# File Storage & Upload
UPLOAD_PATH=./uploads
ALLOWED_FILE_TYPES=pdf,png,jpg,jpeg,tiff,bmp,gif,txt,rtf,doc,docx
# Watch Folder Configuration
WATCH_FOLDER=./watch
WATCH_INTERVAL_SECONDS=30
FILE_STABILITY_CHECK_MS=500
MAX_FILE_AGE_HOURS=168
# FORCE_POLLING_WATCH=1
# OCR & Processing Settings
OCR_LANGUAGE=eng
CONCURRENT_OCR_JOBS=4
OCR_TIMEOUT_SECONDS=300
MAX_FILE_SIZE_MB=50
# Performance Settings
MEMORY_LIMIT_MB=512
CPU_PRIORITY=normal
# Optional: Additional OCR languages (install additional tesseract language packs)
# OCR_LANGUAGE=eng+fra+deu+spa # English + French + German + Spanish