michangarrito/orchestration/inventarios/DEPENDENCIAS.yml
rckrdmrd 928eb795e6 [SIMCO-V38] feat: Actualizar a SIMCO v3.8.0 + cambios apps
- HERENCIA-SIMCO.md actualizado con directivas v3.7 y v3.8
- Cambios en backend y frontend

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 08:53:05 -06:00

499 lines
13 KiB
YAML

# DEPENDENCIAS INVENTORY - MiChangarrito
# Version: 2.1.0
# Ultima actualizacion: 2026-01-10
# Sistema: SIMCO v3.8.0 + CAPVED
metadata:
proyecto: "michangarrito"
descripcion: "Inventario completo de dependencias del proyecto"
version: "2.1.0"
actualizado: "2026-01-10"
actualizado_por: "Agente Orquestador"
# ============================================================================
# RESUMEN EJECUTIVO
# ============================================================================
resumen:
total_aplicaciones: 5
total_dependencias: 86
dependencias_produccion: 54
dependencias_desarrollo: 32
por_aplicacion:
backend: 40
frontend: 24
mobile: 19
whatsapp_service: 14
mcp_server: 6
# ============================================================================
# BACKEND - NestJS API
# ============================================================================
backend:
nombre: "michangarrito-backend"
version: "1.0.0"
tipo: "NestJS Backend API"
puerto: 3141
produccion:
framework:
- nombre: "@nestjs/common"
version: "^10.3.0"
proposito: "Core NestJS framework"
- nombre: "@nestjs/core"
version: "^10.3.0"
proposito: "NestJS runtime"
- nombre: "@nestjs/platform-express"
version: "^10.3.0"
proposito: "Express.js adapter"
database:
- nombre: "typeorm"
version: "^0.3.19"
proposito: "ORM para PostgreSQL"
- nombre: "@nestjs/typeorm"
version: "^10.0.1"
proposito: "Integracion TypeORM-NestJS"
- nombre: "pg"
version: "^8.11.3"
proposito: "Cliente PostgreSQL"
autenticacion:
- nombre: "@nestjs/jwt"
version: "^10.2.0"
proposito: "JWT authentication"
- nombre: "@nestjs/passport"
version: "^10.0.3"
proposito: "Passport.js integration"
- nombre: "passport"
version: "^0.7.0"
proposito: "Authentication middleware"
- nombre: "passport-jwt"
version: "^4.0.1"
proposito: "JWT strategy"
- nombre: "bcrypt"
version: "^5.1.1"
proposito: "Password hashing"
- nombre: "helmet"
version: "^7.1.0"
proposito: "HTTP security headers"
validacion:
- nombre: "class-validator"
version: "^0.14.1"
proposito: "DTO validation"
- nombre: "class-transformer"
version: "^0.5.1"
proposito: "Data transformation"
pagos:
- nombre: "stripe"
version: "^20.1.1"
proposito: "Stripe payments SDK"
utilidades:
- nombre: "@nestjs/config"
version: "^3.1.1"
proposito: "Environment config"
- nombre: "@nestjs/swagger"
version: "^7.2.0"
proposito: "API documentation"
- nombre: "uuid"
version: "^9.0.1"
proposito: "UUID generation"
- nombre: "rxjs"
version: "^7.8.1"
proposito: "Reactive programming"
- nombre: "reflect-metadata"
version: "^0.2.1"
proposito: "Decorator metadata"
desarrollo:
testing:
- nombre: "jest"
version: "^29.7.0"
proposito: "Testing framework"
- nombre: "@nestjs/testing"
version: "^10.3.0"
proposito: "NestJS testing utils"
- nombre: "ts-jest"
version: "^29.1.1"
proposito: "TypeScript Jest support"
- nombre: "supertest"
version: "^6.3.4"
proposito: "HTTP testing"
linting:
- nombre: "eslint"
version: "^8.56.0"
proposito: "Code linting"
- nombre: "@typescript-eslint/parser"
version: "^6.19.0"
proposito: "TypeScript ESLint parser"
- nombre: "@typescript-eslint/eslint-plugin"
version: "^6.19.0"
proposito: "TypeScript ESLint rules"
- nombre: "prettier"
version: "^3.2.4"
proposito: "Code formatting"
typescript:
- nombre: "typescript"
version: "^5.3.3"
proposito: "TypeScript compiler"
- nombre: "ts-node"
version: "^10.9.2"
proposito: "TS execution"
# ============================================================================
# FRONTEND - React Web Application
# ============================================================================
frontend:
nombre: "frontend"
version: "0.0.0"
tipo: "React Web Application"
puerto: 3140
produccion:
ui:
- nombre: "react"
version: "^19.2.0"
proposito: "UI framework"
- nombre: "react-dom"
version: "^19.2.0"
proposito: "DOM rendering"
routing:
- nombre: "react-router-dom"
version: "^7.11.0"
proposito: "SPA navigation"
state:
- nombre: "@tanstack/react-query"
version: "^5.90.16"
proposito: "Server state management"
http:
- nombre: "axios"
version: "^1.13.2"
proposito: "HTTP client"
ui_components:
- nombre: "lucide-react"
version: "^0.562.0"
proposito: "Icon library"
- nombre: "clsx"
version: "^2.1.1"
proposito: "CSS class utilities"
desarrollo:
build:
- nombre: "vite"
version: "^7.2.4"
proposito: "Build tool"
- nombre: "@vitejs/plugin-react"
version: "^5.1.1"
proposito: "React Vite plugin"
styling:
- nombre: "tailwindcss"
version: "^4.1.18"
proposito: "CSS framework"
- nombre: "@tailwindcss/postcss"
version: "^4.1.18"
proposito: "PostCSS plugin"
- nombre: "@tailwindcss/forms"
version: "^0.5.11"
proposito: "Form styles"
- nombre: "postcss"
version: "^8.5.6"
proposito: "CSS processor"
- nombre: "autoprefixer"
version: "^10.4.23"
proposito: "CSS prefixes"
typescript:
- nombre: "typescript"
version: "~5.9.3"
proposito: "TypeScript compiler"
# ============================================================================
# MOBILE - React Native Expo
# ============================================================================
mobile:
nombre: "mobile"
version: "1.0.0"
tipo: "React Native Expo Application"
puerto: 8081
produccion:
framework:
- nombre: "expo"
version: "~54.0.31"
proposito: "Expo framework"
- nombre: "react"
version: "19.1.0"
proposito: "React framework"
- nombre: "react-native"
version: "0.81.5"
proposito: "Native rendering"
navigation:
- nombre: "@react-navigation/native"
version: "^7.1.26"
proposito: "Navigation base"
- nombre: "@react-navigation/native-stack"
version: "^7.9.0"
proposito: "Stack navigation"
- nombre: "@react-navigation/bottom-tabs"
version: "^7.9.0"
proposito: "Tab navigation"
animations:
- nombre: "react-native-reanimated"
version: "^4.2.1"
proposito: "High-perf animations"
- nombre: "react-native-gesture-handler"
version: "^2.30.0"
proposito: "Gesture handling"
expo_modules:
- nombre: "expo-camera"
version: "^17.0.10"
proposito: "Camera access"
- nombre: "expo-barcode-scanner"
version: "^13.0.1"
proposito: "Barcode scanning"
- nombre: "expo-secure-store"
version: "^15.0.8"
proposito: "Secure storage"
storage:
- nombre: "@react-native-async-storage/async-storage"
version: "^2.2.0"
proposito: "Local storage"
- nombre: "@react-native-community/netinfo"
version: "^11.4.1"
proposito: "Network info"
http:
- nombre: "axios"
version: "^1.13.2"
proposito: "HTTP client"
desarrollo:
typescript:
- nombre: "typescript"
version: "~5.9.2"
proposito: "TypeScript compiler"
# ============================================================================
# WHATSAPP SERVICE - Meta Business API
# ============================================================================
whatsapp_service:
nombre: "michangarrito-whatsapp-service"
version: "1.0.0"
tipo: "NestJS WhatsApp Service"
puerto: 3143
produccion:
framework:
- nombre: "@nestjs/common"
version: "^10.3.0"
proposito: "NestJS core"
- nombre: "@nestjs/core"
version: "^10.3.0"
proposito: "NestJS runtime"
- nombre: "@nestjs/platform-express"
version: "^10.3.0"
proposito: "Express adapter"
config:
- nombre: "@nestjs/config"
version: "^3.2.0"
proposito: "Environment config"
- nombre: "@nestjs/swagger"
version: "^7.2.0"
proposito: "API docs"
validacion:
- nombre: "class-validator"
version: "^0.14.1"
proposito: "DTO validation"
- nombre: "class-transformer"
version: "^0.5.1"
proposito: "Data transformation"
seguridad:
- nombre: "helmet"
version: "^7.1.0"
proposito: "HTTP security"
http:
- nombre: "axios"
version: "^1.6.5"
proposito: "WhatsApp API calls"
desarrollo:
typescript:
- nombre: "typescript"
version: "^5.3.3"
proposito: "TypeScript compiler"
# ============================================================================
# MCP SERVER - Model Context Protocol
# ============================================================================
mcp_server:
nombre: "michangarrito-mcp-server"
version: "1.0.0"
tipo: "MCP Server"
puerto: 3142
transporte: "stdio"
produccion:
mcp:
- nombre: "@modelcontextprotocol/sdk"
version: "^1.0.0"
proposito: "MCP SDK oficial"
validacion:
- nombre: "zod"
version: "^3.22.4"
proposito: "Schema validation"
http:
- nombre: "axios"
version: "^1.6.5"
proposito: "API calls"
desarrollo:
typescript:
- nombre: "typescript"
version: "^5.3.3"
proposito: "TypeScript compiler"
- nombre: "tsx"
version: "^4.7.0"
proposito: "TS execution/watch"
# ============================================================================
# TECNOLOGIAS PRINCIPALES
# ============================================================================
stack_tecnologico:
backend:
framework: "NestJS 10.3.0"
orm: "TypeORM 0.3.19"
database: "PostgreSQL (pg 8.11.3)"
auth: "JWT + Passport.js"
pagos: "Stripe 20.1.1"
frontend:
framework: "React 19.2.0"
bundler: "Vite 7.2.4"
css: "TailwindCSS 4.1.18"
routing: "React Router 7.11.0"
state: "React Query 5.90.16"
mobile:
framework: "React Native 0.81.5"
platform: "Expo 54.0.31"
navigation: "React Navigation 7.x"
animations: "Reanimated 4.2.1"
integraciones:
whatsapp: "Meta Business API"
llm: "Model Context Protocol (MCP)"
payments: "Stripe"
# ============================================================================
# INCONSISTENCIAS DETECTADAS
# ============================================================================
inconsistencias:
axios:
descripcion: "Versiones diferentes de Axios"
aplicaciones:
- app: "frontend"
version: "^1.13.2"
- app: "mobile"
version: "^1.13.2"
- app: "whatsapp-service"
version: "^1.6.5"
- app: "mcp-server"
version: "^1.6.5"
recomendacion: "Unificar a ^1.13.2"
typescript:
descripcion: "Versiones ligeramente diferentes"
aplicaciones:
- app: "backend"
version: "^5.3.3"
- app: "frontend"
version: "~5.9.3"
- app: "mobile"
version: "~5.9.2"
- app: "whatsapp-service"
version: "^5.3.3"
- app: "mcp-server"
version: "^5.3.3"
recomendacion: "Considerar unificar a ~5.9.x"
# ============================================================================
# DEPENDENCIAS COMPARTIDAS
# ============================================================================
dependencias_compartidas:
- nombre: "axios"
apps: ["backend", "frontend", "mobile", "whatsapp-service", "mcp-server"]
nota: "Cliente HTTP en todas las apps"
- nombre: "typescript"
apps: ["backend", "frontend", "mobile", "whatsapp-service", "mcp-server"]
nota: "Compilador en todas las apps"
- nombre: "class-validator"
apps: ["backend", "whatsapp-service"]
nota: "Validacion de DTOs en NestJS"
- nombre: "class-transformer"
apps: ["backend", "whatsapp-service"]
nota: "Transformacion de datos en NestJS"
- nombre: "@nestjs/*"
apps: ["backend", "whatsapp-service"]
nota: "Framework NestJS compartido"
# ============================================================================
# SEGURIDAD
# ============================================================================
seguridad:
autenticacion:
- bcrypt: "Hashing de passwords"
- passport-jwt: "Estrategia JWT"
- expo-secure-store: "Storage seguro mobile"
http:
- helmet: "Headers de seguridad"
validacion:
- class-validator: "Validacion de entrada"
- zod: "Schema validation"
# ============================================================================
# NOTAS
# ============================================================================
notas:
- "Las versiones con ^ permiten actualizaciones minor"
- "Las versiones con ~ solo permiten patch updates"
- "NestJS packages estan alineados en v10.3.0"
- "React 19 es la ultima version estable"
- "Expo 54 es compatible con React Native 0.81"