Módulos
Zumito proporciona un conjunto de módulos oficiales que extienden tu bot con funcionalidades listas para usar. Cada módulo es un paquete npm bajo el scope @zumito-team y se integra directamente con el framework de Zumito mediante la configuración bundles.
Módulos disponibles
Sección titulada «Módulos disponibles»Arquitectura
Sección titulada «Arquitectura»Todos los módulos extienden Module de zumito-framework y se registran en el ServiceContainer. Pueden proporcionar:
- Servicios — Clases inyectables consumidas por otros módulos.
- Comandos — Comandos slash/prefix de Discord.
- Rutas — Endpoints HTTP (páginas admin, API, etc.).
- Elementos de navegación — Entradas en la barra lateral del Admin o User Panel.
Los módulos pueden declarar dependencias de otros módulos mediante las propiedades estáticas dependencies y optionalDependencies. El framework resuelve automáticamente estas dependencias y carga los módulos en el orden correcto usando ordenamiento topológico. Consulta Ciclo de vida del módulo para más detalles.
Grafo de dependencias
Sección titulada «Grafo de dependencias»El siguiente grafo muestra las relaciones de dependencia entre los módulos oficiales. Estas se resuelven automáticamente por el framework durante el arranque.
zumito-framework (core)├── admin-module│ └── reactions-module├── builtbybit-license├── canvas-module│ ├── stickmanfight│ └── distube-module├── discord-auth│ ├── admin-module│ └── user-panel-module├── file-manager│ ├── s3-assets│ └── local-filesystem├── logger-module├── sentry├── user-panel-module│ └── distube-module└── stickmanfightInstalación
Sección titulada «Instalación»Instala cualquier módulo vía npm y agrégalo a los bundles de tu zumito.config.ts:
export default { bundles: [ '@zumito-team/admin-module', '@zumito-team/logger-module', // ... ]}