Introduction
Disapp: Build Faster
Disapp is a fully Type-Safe modern infrastructure that allows you to manage your Discord.js bots from a single unified core, eliminating unnecessary boilerplate. Even if you're a Discord.js master, Disapp saves you writing over 10,000 lines of repetitive code.
This documentation covers everything you need to know, from initializing your first bot to building enterprise-grade modular architectures.
Start Building
Use our CLI or install into an existing project to bootstrap your environment in seconds.
Explore Commands
Automate slash command synchronization using a robust, class-based file-system mapping.
Database Integration
Seamlessly attach Type-Safe database operations to your bot using native Repository patterns.
Fluent API
Construct advanced action rows and chunk long messages using our custom UI builder.
Versioning and Environments
When deploying bots with Disapp, follow the conventions below. Disapp has robust internal checks to ensure backwards compatibility across the core modules.
| Field | Description |
|---|---|
| Version Format | Semantic versioning representing your bot's major and minor releases (e.g., 1.4.2). |
| Release Status | Release for stable builds, Beta for finalized but untested structures, and Alpha for early development cycles. |
| Platform Support | Disapp is designed to gracefully overlay any major recent implementation of Discord.js. |
| Artifacts | Compiled production .zip and .json manifest files used during continuous deployment. |
Updating the Core Framework
Backup Your Project
Before any major package upgrade, push your project and package.json to a Git repository or backup your root directory.
Bump the Version
Open your terminal and force the package update by running pnpm install @disapp/core@latest.
Save and Restart
Restart the bot context. Disapp will automatically re-evaluate your commands, apply any new middlewares, and communicate the changes directly to the Discord API.
Deprecating Legacy Features
When a command or module becomes outdated and you no longer wish users to trigger it, you can transition its status to "Unlisted" or apply a native Disapp middleware (like an admin lock) rather than deleting it.
Always maintain a structured changelog.md. Recording detailed fixes, such as "Resolved a permission denial error in the tracking module," will save your team endless hours of debugging.
The Disapp Ecosystem
Disapp simplifies filtering and isolating massive bot architectures into manageable, separated concerns:
Discord Gateway
Target modern Discord APIs effortlessly as our compiler abstracts away lower-level connection handshakes.
Plugin Resolution
Determine how much space auxiliary systems like Canvas modules or Audio players take up within the core context.
Isolated Scope
Narrow down broad handlers to specific ecosystems: Moderation, Gaming interactions, or Data tracking.
Development Environment
When in development mode, databases and interactions are heavily audited, and crash tolerance is maximized through isolated testing nets.