diff --git a/.env.example b/.env.example index ac5a7b5..10ef3ff 100644 --- a/.env.example +++ b/.env.example @@ -1,59 +1,118 @@ # ======================================== # OpenCCB Environment Configuration # ======================================== -# NOTA: Este archivo es solo un ejemplo. -# El script deploy-ssl.sh generará valores seguros automáticamente. +# Copia este archivo a .env y configura tus variables +# cp .env.example .env # ======================================== # ---------------------------------------- # Database Configuration -# PRODUCCIÓN (Docker): Usar db:5432 -# DESARROLLO (Local): Usar localhost:5434 -# El script deploy-ssl.sh generará un valor seguro si no existe # ---------------------------------------- -DB_PASSWORD=CHANGE_ME_GENERATE_SECURE_PASSWORD -JWT_SECRET=CHANGE_ME_GENERATE_SECURE_SECRET +# DB_PASSWORD: Genera uno seguro con: ./generate_jwt_secret.sh +DB_PASSWORD=tu_password_seguro -# Database URLs (producción: db:5432, desarrollo: localhost:5434) -CMS_DATABASE_URL=postgresql://user:DB_PASSWORD@db:5432/openccb_cms -LMS_DATABASE_URL=postgresql://user:DB_PASSWORD@db:5432/openccb_lms -DATABASE_URL=postgresql://user:DB_PASSWORD@db:5432/openccb_cms +# JWT_SECRET: Genera uno seguro con: ./generate_jwt_secret.sh +JWT_SECRET=tu_jwt_secret_seguro +# Database URLs +# Producción (Docker): db:5432 +# Desarrollo (Local): localhost:5433 o localhost:5434 +CMS_DATABASE_URL=postgresql://user:DB_PASSWORD@localhost:5433/openccb_cms +LMS_DATABASE_URL=postgresql://user:DB_PASSWORD@localhost:5433/openccb_lms +DATABASE_URL=postgresql://user:DB_PASSWORD@localhost:5433/openccb_cms + +# SAM Database (External MySQL) +SAM_DATABASE_URL=mysql://usuario:password@host:3306/sige_sam_v3 + +# Bridge Database +BRIDGE_DATABASE_URL=postgresql://user:password@localhost:5432/openccb_cms?sslmode=disable + +# ---------------------------------------- # Logging +# ---------------------------------------- RUST_LOG=info +# Opciones: error, warn, info, debug, trace +# ---------------------------------------- +# Environment +# ---------------------------------------- +ENVIRONMENT=dev +# Opciones: dev, prod + +# ---------------------------------------- # Let's Encrypt Configuration +# ---------------------------------------- +LETSENCRYPT_STAGING=true # true = Staging (certificados de prueba, sin rate limits) # false = Production (certificados reales, con rate limits) -LETSENCRYPT_STAGING=true +# ---------------------------------------- # AI Configuration -# Providers: 'openai' or 'local' +# ---------------------------------------- AI_PROVIDER=local -OPENAI_API_KEY= +# Opciones: 'openai' o 'local' + +OPENAI_API_KEY=tu_api_key_de_openai # Local AI (Ollama & Whisper) LOCAL_WHISPER_URL=http://localhost:9000 LOCAL_OLLAMA_URL=http://localhost:11434 -LOCAL_LLM_MODEL=llama3.2:3b -# Embedding Model for semantic search (pgvector) +# Model Configuration - Optimized for each use case +LOCAL_LLM_MODEL=llama3.2:3b +# Chat/Tutor: llama3.2:3b - Rápido y eficiente para IA conversacional + +LOCAL_LLM_MODEL_COMPLEX=qwen3.5:9b +# Razonamiento complejo/análisis: qwen3.5:9b + +LOCAL_LLM_MODEL_ADVANCED=gpt-oss:latest +# Tareas pesadas: gpt-oss:latest - Modelo más capaz + +# Embeddings: nomic-embed-text - Optimizado para búsqueda semántica EMBEDDING_MODEL=nomic-embed-text +# Audio transcription (Whisper) +WHISPER_MODEL=whisper-large-v3 + +# Bark TTS API (Text-to-Speech para preguntas) +BARK_API_URL=http://localhost:8443 + +# ---------------------------------------- +# Development URLs (Red local) +# ---------------------------------------- +DEV_OLLAMA_URL=http://t-800.norteamericano.cl:11434 +DEV_WHISPER_URL=http://t-800.norteamericano.cl:9000 +DEV_BARK_URL=http://t-800:8000 + +# ---------------------------------------- +# Production URLs (Red local) +# ---------------------------------------- +PROD_OLLAMA_URL=http://t-800.norteamericano.cl:11434 +PROD_WHISPER_URL=http://t-800.norteamericano.cl:9000 + +# Video Bridge URL +LOCAL_VIDEO_BRIDGE_URL=http://t-800.norteamericano.cl:8080 + +# ---------------------------------------- # Mercado Pago Configuration -MP_ACCESS_TOKEN= -MP_PUBLIC_KEY= -MP_WEBHOOK_SECRET= +# ---------------------------------------- +MP_ACCESS_TOKEN=tu_access_token_de_mercado_pago +MP_PUBLIC_KEY=tu_public_key_de_mercado_pago +MP_WEBHOOK_SECRET=tu_webhook_secret_de_mercado_pago MP_BACK_URL_SUCCESS=http://localhost:3003/payments/success MP_BACK_URL_FAILURE=http://localhost:3003/payments/failure MP_NOTIFICATION_URL= +# ---------------------------------------- # External MySQL Integration -MYSQL_DATABASE_URL=mysql://db_user:db_password@localhost:3306/external_database_name +# ---------------------------------------- +MYSQL_DATABASE_URL=mysql://usuario:password@host:3306/base_de_datos EXTERNAL_TABLE_GRADES=notas EXTERNAL_ID_TIPO_NOTA=1 +# ---------------------------------------- # Branding Defaults +# ---------------------------------------- DEFAULT_ORG_NAME="Norteamericano" DEFAULT_PLATFORM_NAME="Norteamericano Learning" DEFAULT_LOGO_URL="" @@ -61,8 +120,9 @@ DEFAULT_FAVICON_URL="" DEFAULT_PRIMARY_COLOR="#3B82F6" DEFAULT_SECONDARY_COLOR="#8B5CF6" +# ---------------------------------------- # Frontend API URLs (Producción) +# ---------------------------------------- # Estas URLs se usan para el build del frontend y deben apuntar a los dominios públicos NEXT_PUBLIC_CMS_API_URL=https://studio.norteamericano.com NEXT_PUBLIC_LMS_API_URL=https://learning.norteamericano.com -