Files
discordeno/packages/bot
Fleny 3e35160504 fix(bot)!: Split DiscordSelectComponent into specific select components (#4690)
* refactor(bot)!: setup desired properties for all transformers

SetupDesiredProps when is given an object that does not corrispond to a transformer object that supports desired properties will behave like TransformProperty on the entire object as when it tries to get the properties for said object it will find `never` as the props and for `IsKeyDesired` a props of `never` means that all props are desired.

* Use Equals helper, clean up a bit the code

* Explicit the IsKeyDesired TProps never behavior

* fix(bot): Bug with return type in functions

* fix(bot)!: Split DiscordSelectComponent into specific select components

And add missing resolved property from the responses, since this now correctly transformers the responses, resolved has to be added.
The reverse transformer does not transform resolved as it requires a bunch of others, such as a user, role, message reverse transformers etc.

* Apply suggestions from code review

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2026-02-16 23:37:57 +05:30
..
2026-01-17 21:54:15 +01:00

Discordeno

Discord API library for Node.JS, Deno & Bun

Discord codecov action status

Discordeno is actively maintained to guarantee excellent performance, latest features, and ease of use.

  • Simple, Efficient, and Lightweight: Discordeno is lightweight, simple to use, and adaptable.
    • By default: No caching.
  • Functional API:
    • The functional API eliminates the challenges of extending built-in classes and inheritance while ensuring overall simple but performant code.
  • Cross Runtime: Supports the Node.js, Deno, and Bun runtimes.
  • Standalone components: Discordeno offers the option to have practically any component of a bot as a separate piece, including standalone REST, gateways, custom caches, and more.
  • Flexibility/Scalability: Remove any properties, if your bot doesn't need them. For instance, remove Channel.topic if your bot doesn't require it. You may save GBs of RAM in this way. A few lines of code are all that are needed to accomplish this for any property on any object.

Custom Cache

Have your cache setup in any way you like. Redis, PGSQL or any cache layer you would like.