taro-bot
A Discord bot built in Go and Arikawa.
Notable features:
- Strict arg parsing and selection
- Automatic error handling via friendly messages given to the user :)
- Asynchronous event handling with concurrency-safe configs
- Fully-fledged plugin support
A feature (plugin) is able to:
All bot features are plugins, and can be enabled or disabled on demand, with hot-reloading being added soon (#8).
More information about using and creating plugins is described in the plugin documentation.
Usage
git clone git@github.com:5HT2/taro-bot.git && cd taro-bot
make
./taro
You can also do ./update.sh
to run or update the Docker image, provided you have Docker installed.
Config
This is the simplest example of the config/config.json
file, you only need bot_token
to be set.
{
"bot_token": "bot token goes here"
}
You can also create a config/plugins.json
, to select which plugins will be loaded.
This is optional, and a default (curated) will load if you do not set it, or if you add "default"
to the list.
{
"loaded_plugins": ["example", "leave-join-msg"]
}