Microkernel modular para carga dinámica de módulos.
npm install @leotoloza/kernelbash
pnpm add @leotoloza/kernel
o
npm install @leotoloza/kernel
o
yarn add @leotoloza/kernel
`
---
🛠️ Uso básico
`typescript
// Ejemplo básico
import Kernel from "@leotoloza/kernel";
const kernel = new Kernel();
await kernel.iniciar();
// Ejemplo con ruta personalizada
import path from "path";
const rutaPersonalizada = path.resolve("src");
const kernel = new Kernel(rutaPersonalizada);
await kernel.iniciar();
`
El kernel puede inicializarse de dos formas:
1. Sin parámetros: cargará los módulos desde la carpeta /modulos en la raíz
2. Con ruta personalizada: cargará los módulos desde la ruta especificada
---
🐜 Bug fix
- Ahora se puede pasar una ruta por parámetro al inicializar el microkernel, por ejemplo:
`ts
import path from "path";
const ruta = path.resolve("src"); // Esto devuelve la ruta absoluta
`
---
📦 Estructura de carpetas esperada
`
/src
/modulos
/usuarios
index.ts # Punto de entrada del módulo
Controller.ts # Controlador del módulo
Router.ts # Rutas del módulo
Model.ts # Modelo de datos
Repository.ts # Repositorio de datos
/productos
...
`
Cada módulo debe tener al menos un archivo index.ts como punto de entrada.
🛠️ Generador de módulos recomendado
Para facilitar la creación de módulos con una estructura predefinida, te recomendamos instalar la siguiente herramienta CLI:
👉 lynk-module-generator
Esta utilidad permite generar módulos automáticamente con su vista, controlador y configuración base.
Cada subcarpeta representa un módulo que se cargará dinámicamente.
---
🧩 Compatibilidad
- Requiere Node.js 16+
- Compatible con módulos ES (type: "module" en package.json`)