# 🚀 CONFIGURATION DÉVELOPPEMENT - VEZA PLATFORM # Configuration générale project: name: "Veza Platform" version: "1.0.0" description: "Plateforme musicale collaborative complète" environment: "development" # Configuration des services services: backend-api: name: "Backend API" port: 8080 language: "go" version: "1.23" health_endpoint: "/health" start_command: "go run cmd/api/main.go" working_directory: "veza-backend-api" dependencies: - "postgresql" - "redis" chat-server: name: "Chat Server" port: 3001 language: "rust" version: "1.70" health_endpoint: "/health" start_command: "cargo run" working_directory: "veza-chat-server" dependencies: - "postgresql" - "redis" stream-server: name: "Stream Server" port: 8000 language: "rust" version: "1.70" health_endpoint: "/health" start_command: "cargo run" working_directory: "veza-stream-server" dependencies: - "redis" frontend: name: "Frontend" port: 3000 language: "typescript" version: "20" health_endpoint: "/" start_command: "npm run dev" working_directory: "veza-frontend" dependencies: [] mobile: name: "Mobile App" port: 19006 language: "typescript" version: "20" health_endpoint: "/" start_command: "npm start" working_directory: "veza-mobile" dependencies: [] # Configuration de la base de données database: postgresql: host: "localhost" port: 5432 name: "veza_dev" user: "veza_user" password: "veza_password" ssl_mode: "disable" redis: host: "localhost" port: 6379 password: "" db: 0 # Configuration des tests testing: coverage_threshold: 90 timeout: 300 parallel: true types: - "unit" - "integration" - "performance" - "security" tools: go: - "go test" - "gosec" - "golangci-lint" rust: - "cargo test" - "cargo clippy" - "cargo audit" javascript: - "jest" - "eslint" - "npm audit" # Configuration du monitoring monitoring: prometheus: port: 9090 enabled: true grafana: port: 3001 enabled: true jaeger: port: 16686 enabled: true health_checks: interval: 30 timeout: 10 retries: 3 # Configuration CI/CD ci_cd: github_actions: true docker_registry: "ghcr.io" image_name: "veza-platform" environments: development: auto_deploy: true tests_required: true staging: auto_deploy: false tests_required: true approval_required: true production: auto_deploy: false tests_required: true approval_required: true security_scan_required: true # Configuration des outils de développement tools: generators: enabled: true validators: enabled: true pre_commit: true formatters: enabled: true auto_format: true linters: enabled: true strict_mode: true # Configuration de la documentation documentation: auto_generate: true formats: - "markdown" - "html" - "pdf" sections: - "api" - "architecture" - "deployment" - "monitoring" - "development" # Configuration de la sécurité security: secret_management: true encryption_at_rest: true encryption_in_transit: true scans: dependency_check: true vulnerability_scan: true security_audit: true policies: password_policy: "strong" session_timeout: 3600 mfa_required: false # Configuration des performances performance: load_testing: true stress_testing: true memory_profiling: true thresholds: response_time: 200 throughput: 1000 error_rate: 0.1 cpu_usage: 80 memory_usage: 80 # Configuration des logs logging: level: "info" format: "json" rotation: true retention_days: 30 destinations: - "file" - "stdout" - "elasticsearch" services: backend-api: "debug" chat-server: "info" stream-server: "info" frontend: "warn" # Configuration des notifications notifications: slack: enabled: true webhook_url: "${SLACK_WEBHOOK_URL}" email: enabled: true smtp_host: "${SMTP_HOST}" smtp_port: 587 webhook: enabled: true url: "${WEBHOOK_URL}" # Configuration des métriques metrics: collection_interval: 30 retention_days: 90 custom_metrics: - "user_registrations" - "track_uploads" - "chat_messages" - "stream_views" - "api_requests" - "error_rate" - "response_time" # Configuration des environnements environments: development: debug: true hot_reload: true mock_services: true staging: debug: false hot_reload: false mock_services: false production: debug: false hot_reload: false mock_services: false monitoring: true alerting: true