workspace-v1/shared/knowledge-base/templates/module-template/USAGE.md
rckrdmrd 66161b1566 feat: Workspace-v1 complete migration with NEXUS v3.4
Sistema NEXUS v3.4 migrado con:

Estructura principal:
- core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles)
- core/catalog: Catalogo de funcionalidades reutilizables
- shared/knowledge-base: Base de conocimiento compartida
- devtools/scripts: Herramientas de desarrollo
- control-plane/registries: Control de servicios y CI/CD
- orchestration/: Configuracion de orquestacion de agentes

Proyectos incluidos (11):
- gamilit (submodule -> GitHub)
- trading-platform (OrbiquanTIA)
- erp-suite con 5 verticales:
  - erp-core, construccion, vidrio-templado
  - mecanicas-diesel, retail, clinicas
- betting-analytics
- inmobiliaria-analytics
- platform_marketing_content
- pos-micro, erp-basico

Configuracion:
- .gitignore completo para Node.js/Python/Docker
- gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git)
- Sistema de puertos estandarizado (3005-3199)

Generated with NEXUS v3.4 Migration System
EPIC-010: Configuracion Git y Repositorios
2026-01-04 03:37:42 -06:00

2.9 KiB

Guia de Uso: {Nombre del Modulo}

Modulo: {module-id} Version: X.Y.Z


Prerequisitos

  • Node.js 18+
  • {Framework} configurado
  • Base de datos PostgreSQL (si aplica)
  • Variables de entorno configuradas

Paso 1: Instalacion

Opcion A: Copia Directa

# Desde el knowledge-base
cp -r /path/to/knowledge-base/modules/{categoria}/{modulo}/src \
      your-project/src/modules/{modulo}

Opcion B: Como Dependencia

# Si esta publicado como package
npm install @workspace/{modulo}

Paso 2: Configuracion

2.1 Variables de Entorno

Crear/actualizar .env:

# Configuracion {MODULO}
{MODULO}_ENABLED=true
{MODULO}_API_KEY=your-api-key
{MODULO}_SECRET=your-secret

2.2 Configuracion en Codigo

// config/{modulo}.config.ts
export default () => ({
  {modulo}: {
    enabled: process.env.{MODULO}_ENABLED === 'true',
    apiKey: process.env.{MODULO}_API_KEY,
    secret: process.env.{MODULO}_SECRET,
  },
});

Paso 3: Integracion

3.1 Importar Modulo

// app.module.ts
import { {Module}Module } from './modules/{modulo}/{modulo}.module';

@Module({
  imports: [
    ConfigModule.forRoot(),
    {Module}Module.forRootAsync({
      imports: [ConfigModule],
      useFactory: (configService: ConfigService) => ({
        apiKey: configService.get('{MODULO}_API_KEY'),
        // ... mas opciones
      }),
      inject: [ConfigService],
    }),
  ],
})
export class AppModule {}

3.2 Uso en Servicios

// your.service.ts
import { {Module}Service } from './modules/{modulo}/{modulo}.service';

@Injectable()
export class YourService {
  constructor(private readonly {modulo}Service: {Module}Service) {}

  async someMethod() {
    // Usar el servicio
    const result = await this.{modulo}Service.doSomething();
    return result;
  }
}

Paso 4: Verificacion

4.1 Tests

# Ejecutar tests del modulo
npm run test -- --grep="{modulo}"

4.2 Checklist

  • Modulo importado en AppModule
  • Variables de entorno configuradas
  • Dependencias instaladas
  • Build pasa sin errores
  • Tests pasan

Ejemplos de Uso

Ejemplo Basico

// Uso simple
const result = await {modulo}Service.basicOperation();

Ejemplo Avanzado

// Uso con opciones
const result = await {modulo}Service.advancedOperation({
  option1: 'value1',
  option2: 'value2',
});

Troubleshooting

Error: "{MODULO}_API_KEY not defined"

Causa: Variable de entorno no configurada. Solucion: Agregar {MODULO}_API_KEY=value al archivo .env.

Error: "Module not found"

Causa: Modulo no importado correctamente. Solucion: Verificar import en app.module.ts.

Soporte


Siguiente paso: Ver API.md para referencia completa de la API.