Uecko_ERP/docs/TEMPLATE.md
2025-09-27 21:28:50 +02:00

1.7 KiB

Prompt para tu README / CLI

Generar un nuevo módulo ERP desde la plantilla

Nuestro ERP permite crear módulos de forma estandarizada usando una plantilla base (Hexagonal/DDD, TS, Express, Sequelize) y un generador Plop.

Opción A — con Plop (recomendada)

  1. Instala dependencias de desarrollo si no las tienes:

    • pnpm add -D plop
  2. Asegúrate de tener en el repo:

    • plopfile.js con el generador module
    • Carpeta templates/new-module/ con la plantilla (placeholders Handlebars: {{kebabCase name}}, {{pascalCase name}}, etc.)
  3. Ejecuta el generador:

    • pnpm plop module
  4. Introduce el nombre del módulo en kebab-case (p. ej., suppliers).

  5. Se creará packages/suppliers/ con:

    • src/api/{application,domain,infrastructure,helpers} + common
    • Casos de uso CRUD, presenters (FULL/LIST), specs comunes y contratos de repositorio.
  6. Integra en el monorepo:

    • Añade targets en turbo.json si aplica.
    • Ejecuta pnpm -w build para validar compilación.

Opción B — manual (desde ZIP de plantilla)

  1. Descomprime new-module-template.zip.
  2. Copia new-module/ a packages/<mi-modulo>/.
  3. Renombra los archivos con entity/{{name}} por el nombre real o usa búsqueda global.
  4. Ajusta package.json (name, scripts), y registra el módulo en turbo.json.
  5. pnpm -w install && pnpm -w build.

Convenciones clave

  • Nombres de archivos/directorios en kebab-case; código en Inglés; comentarios TSDoc en castellano.
  • Mantén SOLID, SoC, alta cohesión/bajo acoplamiento, y hexagonal (puertos/adaptadores).
  • Observabilidad (logs estructurados), idempotencia en endpoints, y principio de menor privilegio.