|
Some checks failed
CI Pipeline / changes (push) Has been cancelled
CI Pipeline / core (push) Has been cancelled
CI Pipeline / trading-backend (push) Has been cancelled
CI Pipeline / trading-data-service (push) Has been cancelled
CI Pipeline / trading-frontend (push) Has been cancelled
CI Pipeline / erp-core (push) Has been cancelled
CI Pipeline / erp-mecanicas (push) Has been cancelled
CI Pipeline / gamilit-backend (push) Has been cancelled
CI Pipeline / gamilit-frontend (push) Has been cancelled
|
||
|---|---|---|
| .. | ||
| catalog | ||
| constants | ||
| devtools/environment | ||
| modules | ||
| orchestration | ||
| standards | ||
| types | ||
| README.md | ||
Core - Núcleo de la Fábrica de Software
Descripción
El directorio core/ contiene todo lo que se comparte a nivel de fábrica, no de proyecto individual:
- Sistema de orquestación de agentes
- Módulos de código reutilizables
- Estándares técnicos y de negocio
- Directivas globales para agentes/subagentes
- Constantes y tipos universales
Estructura
core/
├── modules/ # Código compartido ejecutable
│ ├── utils/ # Utilidades universales ✅
│ │ ├── date.util.ts # Manipulación de fechas
│ │ ├── string.util.ts # Manipulación de strings
│ │ ├── validation.util.ts # Validaciones
│ │ └── index.ts
│ ├── auth/ # Autenticación (por implementar)
│ ├── billing/ # Facturación
│ ├── notifications/ # Notificaciones
│ ├── payments/ # Pagos
│ └── multitenant/ # Multi-tenancy
│
├── constants/ # Constantes globales ✅
│ ├── enums.constants.ts # Enums universales
│ ├── regex.constants.ts # Patrones regex
│ └── index.ts
│
├── types/ # Tipos TypeScript compartidos ✅
│ ├── api.types.ts # Tipos de API
│ ├── common.types.ts # Tipos comunes
│ └── index.ts
│
├── catalog/ # Documentación de funcionalidades
│ ├── auth/
│ ├── notifications/
│ └── ...
│
├── orchestration/ # Sistema de agentes NEXUS
│ ├── agents/
│ ├── directivas/
│ ├── templates/
│ └── referencias/
│
└── standards/ # Estándares técnicos globales
├── CODING-STANDARDS.md
├── TESTING-STANDARDS.md
└── ...
Uso
Importar Utilidades
// En cualquier proyecto del workspace
import { formatDate, slugify, isEmail } from '@core/modules/utils';
// O importar específico
import { formatToISO, addDays } from '@core/modules/utils/date.util';
Importar Constantes
import { UserStatus, PaymentStatus } from '@core/constants';
import { EMAIL_REGEX, UUID_REGEX } from '@core/constants/regex.constants';
Importar Tipos
import { ApiResponse, PaginatedResponse } from '@core/types';
import { BaseEntity, Address } from '@core/types/common.types';
Módulos Disponibles
Utils (@core/modules/utils)
| Archivo | Funciones | Descripción |
|---|---|---|
date.util.ts |
formatDate, addDays, diffInDays, etc. | Manipulación de fechas |
string.util.ts |
slugify, capitalize, truncate, etc. | Manipulación de strings |
validation.util.ts |
isEmail, isUUID, isStrongPassword, etc. | Validaciones |
Constants (@core/constants)
| Archivo | Contenido |
|---|---|
enums.constants.ts |
UserStatus, PaymentStatus, NotificationType, etc. |
regex.constants.ts |
EMAIL_REGEX, UUID_REGEX, PHONE_REGEX, etc. |
Types (@core/types)
| Archivo | Tipos |
|---|---|
api.types.ts |
ApiResponse, PaginatedResponse, ErrorCodes |
common.types.ts |
BaseEntity, Address, Money, Result |
Proyectos que Usan Core
- Gamilit - Plataforma educativa de gamificación
- Trading Platform - OrbiQuant IA trading
- ERP Suite - Sistema ERP multi-vertical
Sistema de Orquestación
Los agentes cargan automáticamente las directivas de core/orchestration/directivas/ al inicializar.