nyxx
Simple, robust framework for creating discord bots for Dart language.
Features
- Slash commands support
Supports and provides easy API for creating and handling slash commands - Commands framework included
A fast way to create a bot with command support. Implementing the framework is simple - and everything is done automatically. - Cross Platform
Nyxx works on the command line, in the browser, and on mobile devices. - Fine Control
Nyxx allows you to control every outgoing HTTP request or WebSocket message. - Complete
Nyxx supports nearly all Discord API endpoints.
Quick example
Basic usage:
void main() {
final bot = NyxxFactory.createNyxxWebsocket("<TOKEN>", GatewayIntents.allUnprivileged)
..registerPlugin(Logging()) // Default logging plugin
..registerPlugin(CliIntegration()) // Cli integration for nyxx allows stopping application via SIGTERM and SIGKILl
..registerPlugin(IgnoreExceptions()) // Plugin that handles uncaught exceptions that may occur
..connect();
// Listen for message events
bot.eventsWs.onMessageReceived.listen((event) {
if (event.message.content == "!ping") {
event.message.channel.sendMessage(MessageBuilder.content("Pong!"));
}
});
}
Other nyxx packages
More examples
Nyxx examples can be found here.
Example bots
Documentation, help and examples
Dartdoc documentation for latest stable version is hosted on pub
Docs and wiki
You can read docs and wiki articles for latest stable version on my website. This website also hosts docs for latest
dev changes to framework (dev
branch)
Official nyxx discord server
If you need assistance in developing bot using nyxx you can join official nyxx discord guild.
Discord API docs
Discord API documentation features rich descriptions about all topics that nyxx covers.
Discord API Guild
The unofficial guild for Discord Bot developers. To get help with nyxx check #dart_nyxx
channel.
Dartdocs
The dartdocs page will always have the documentation for the latest release.
Contributing to Nyxx
Credits
- Hackzzila's for nyx.
Libraries
- nyxx_sharding
- A utility library for implementing external sharding with nyxx, or alternatively with any Discord bot framework.