Adam is a bot framework for Discord, built on top of arikawa. I originally started
working on this because I needed a simple command router with support for localization, but along the way of building
it, it turned into a fully-featured bot framework. You can do everything from a simple ping
bot to a localized bot
with custom commands.
- 🖥️ Typed (variadic) arguments and flags, as well as out-of-the-box parsing for shellword, and delimiter-based notations
- 🌍 Support for localization
- 🗒️ Utilities for permission handling, emojis, and awaiting responses, component interactions and reactions
- ⚡ Error handling with automatic stack trace generation
- 👪 Command grouping through modules
- ⏳ Command throttling/cooldowns
- ✏️ Support for message edits
- 🤝 Middlewares
- 🛑 Powerful access control system
- 🔌 Custom command sources for commands available at runtime
- ✨ Abstracted - Don't like something? Swap it out for a custom implementation
Have a look at the example bots or use the official guide and get your first bot up and running!
Contributions through both pull requests and issues are much appreciated. Check out the contributing guidelines for more information.
You can also help to localize adam on our POEditor page.
Built with ❤️ by Maximilian von Lindern. Available under the MIT License.