Modules
Zumito provides a set of official modules that extend your bot with ready-to-use features. Each module is an npm package under the @zumito-team scope and integrates directly with the Zumito framework via the bundles configuration.
Available modules
Section titled “Available modules”Architecture
Section titled “Architecture”All modules extend Module from zumito-framework and register themselves in the ServiceContainer. They can provide:
- Services — Injectable classes consumed by other modules.
- Commands — Discord slash/prefix commands.
- Routes — HTTP endpoints (admin pages, API, etc.).
- Navigation items — Sidebar entries in Admin or User Panel.
Modules can declare dependencies on other modules using static dependencies and optionalDependencies properties. The framework automatically resolves these dependencies and loads modules in the correct order using topological sorting. See Module lifecycle for details.
Dependency graph
Section titled “Dependency graph”The following graph shows the dependency relationships between official modules. These are resolved automatically by the framework at boot time.
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└── stickmanfightInstallation
Section titled “Installation”Install any module via npm and add it to your zumito.config.ts bundles:
export default { bundles: [ '@zumito-team/admin-module', '@zumito-team/logger-module', // ... ]}