Repository
Current version released
4 years ago
Dependencies
deno.land/x
About
Derun is a minimalistic Discord library for creating bot applications. Focused only on (/) slash commands & components.
- ⚡ Lightweight (minimal resource footprint)
- 📦 Object-oriented
- ♻️ Exposed (
web server, rest controller & other parts are reusable) - 🧹 No caching by default
Links
Discord Functionality Coverage
All releases under v1.0 are usable but keep in mind they will continue to change. Version 1.0 will be released after we turn all red dots to green ones:
| Functionality | Status | Extra Description |
|---|---|---|
(Deprecated) |
⏬ | A web server that listens to Discord’s requests. It comes with exposed routing option so it can be used as regular web service. Since v0.1 it got deprecated due to high response time. Discord API uses HTTP/1.1 which is known to be much slower than WebSockets. |
| Gateway | 🟩 | Lightweight gateway that handle connecting shards to Discord Gateway. It supports big sharding :) |
| Slash Commands | 🟩 | |
| Slash Sub Commands | 🟨 | Derun’s command controller supports “first level” subcommands but groups are being ignored. Making sub command of another sub command is not possible. |
| Rest Controller | 🟩 | Full control over requests sent to Discord API. |
| Auto Complete | 🟩 | |
| BitFields | 🟩 | Mechanic to work with Discord’s flags such like permissions or badges. |
| Structure Encapsulation | 🟩 | Objects such like member, user, command or interaction gets processed to make them easier to interact with. |
| Messages (normal & private) |
🟩 | |
| Slash Command Permissions | ❎ | [ABANDONED] This mechanic won’t be supported until Discord makes them actually effective. In its current state - Derun provides way to check user permissions but it happens on app side instead Discord API. |
| Attachments | 🟥 | |
| Ephemeral Interactions | 🟩 | |
| Button Collector | 🟩 | |
| Menu Collector | 🟥 | |
| Statistics | ⚛️ | [IDEA] Count how many times which (/) slash command were used. Use localStorage API as storage for statistics metadata. Collected data can be used later to render usage graphs. |
Author
Derun © Amatsagu, Released under the BSD 2-Clause License.
Authored and maintained by Amatsagu.
