# ================================================================= # CONFIGURATION SERVEUR VEZA CHAT # ================================================================= # Environnement (development, staging, production) RUST_ENV=development RUST_LOG=debug # ================================================================= # BASE DE DONNÉES # ================================================================= DATABASE_URL=postgresql://veza_user:veza_password@localhost:5432/veza_chat DB_MAX_CONNECTIONS=10 DB_CONNECT_TIMEOUT=10 DB_AUTO_MIGRATE=true # ================================================================= # SÉCURITÉ ET AUTHENTIFICATION # ================================================================= JWT_SECRET=your-super-secret-jwt-key-change-this-in-production JWT_ACCESS_DURATION=15m JWT_REFRESH_DURATION=7d JWT_ALGORITHM=HS256 JWT_AUDIENCE=veza-chat JWT_ISSUER=veza-chat-server # Authentification 2FA ENABLE_2FA=false TOTP_WINDOW=30 # Sécurité des mots de passe PASSWORD_MIN_LENGTH=8 BCRYPT_COST=12 # ================================================================= # SERVEUR ET RÉSEAU # ================================================================= SERVER_BIND_ADDR=127.0.0.1:8080 SERVER_WORKERS=0 CONNECTION_TIMEOUT=30 HEARTBEAT_INTERVAL=30 SHUTDOWN_TIMEOUT=10 # ================================================================= # CACHE REDIS (OPTIONNEL) # ================================================================= REDIS_URL=redis://localhost:6379 REDIS_POOL_SIZE=10 REDIS_CONNECT_TIMEOUT=5 REDIS_DEFAULT_TTL=3600 REDIS_KEY_PREFIX=veza_chat: REDIS_ENABLED=true # ================================================================= # LIMITES ET QUOTAS # ================================================================= MAX_MESSAGE_LENGTH=2000 MAX_CONNECTIONS_PER_USER=5 MAX_MESSAGES_PER_MINUTE=60 MAX_FILE_SIZE=10485760 MAX_FILES_PER_USER=100 MAX_ROOMS_PER_USER=50 MAX_MEMBERS_PER_ROOM=1000 # ================================================================= # FONCTIONNALITÉS # ================================================================= ENABLE_FILE_UPLOADS=true ENABLE_MESSAGE_REACTIONS=true ENABLE_USER_MENTIONS=true ENABLE_PINNED_MESSAGES=true ENABLE_MESSAGE_THREADS=true ENABLE_WEBHOOKS=true ENABLE_PUSH_NOTIFICATIONS=false ENABLE_MESSAGE_HISTORY=true # ================================================================= # LOGGING # ================================================================= LOG_LEVEL=info LOG_FORMAT=json LOG_FILE=logs/chat-server.log LOG_ROTATION_SIZE=100MB LOG_ROTATION_FILES=10 LOG_COMPRESSION=true # ================================================================= # INTÉGRATIONS EXTERNES # ================================================================= # Email (optionnel) SMTP_HOST=smtp.gmail.com SMTP_PORT=587 SMTP_USERNAME=your-email@gmail.com SMTP_PASSWORD=your-app-password EMAIL_FROM_ADDRESS=noreply@veza-chat.com EMAIL_FROM_NAME=Veza Chat # Prometheus métriques (optionnel) PROMETHEUS_BIND_ADDR=127.0.0.1:9090 PROMETHEUS_PATH=/metrics # Webhooks sortants (optionnel) WEBHOOK_USER_EVENTS=https://api.yourapp.com/webhooks/user-events WEBHOOK_MESSAGE_EVENTS=https://api.yourapp.com/webhooks/message-events WEBHOOK_SECRET=your-webhook-secret # ================================================================= # DÉVELOPPEMENT # ================================================================= # Base de données de test TEST_DATABASE_URL=postgresql://veza_test:veza_test@localhost:5432/veza_chat_test # Debug et développement ENABLE_DEBUG_ENDPOINTS=true ENABLE_CORS=true CORS_ALLOWED_ORIGINS=http://localhost:3000,http://localhost:3001 # ================================================================= # PRODUCTION # ================================================================= # SSL/TLS (production uniquement) ENABLE_TLS=false TLS_CERT_PATH=/path/to/cert.pem TLS_KEY_PATH=/path/to/key.pem # Performance (production) ENABLE_COMPRESSION=true ENABLE_METRICS=true ENABLE_HEALTH_CHECK=true