Linux / OS X | |
Smexybot is a general-purpose Discord bot written in Rust. It is built upon the serenity.rs Discord API.
The easiest way to use this bot is to invite it to your Discord server. The bot is running 24/7 and gets updated as soon as new features are available.
To invite the bot to your server, click here. You must have the Manage Server permission for that server. Upon clicking the link, you will be asked to choose which permissions to give to smexybot, but be aware that disabling the permissions may lead to unexpected behaviour.
If you have any questions or feedback, feel free to either email me or open an issue in this repo. You can also join my personal Discord server and leave a message, or messaging iwearapot on discord.
Instructions on running a local instance are coming soon.
the global instance (hosted by me) to your server.
Alternatively, a personal instance of the bot can be configured.
Setup a bot account:
- Go to Discord Developers My Applications page
- Click "New Application"
- Enter a name for your application (this is not your bot username) in the "App Name" field
- (Optional) Add a description and/or icon for your bot (the icon will be your bot's profile picture)
- Click "Create Application"
Create a bot user:
- On the page for your application, click "Create a Bot User"
- Click "Yes, do it!" when asked to confirm
- Now that your bot is created, press "click to reveal" on the application page to see your bot's token.
- Copy this value, and paste it into the file
.env.example
(included in this repository), in the place of the existingDISCORD_BOT_TOKEN
value. - Copy the
.env.example
file to.env
, and modify any other configuration options you wish.
Run an instance of the bot, either by running a pre-built executable (coming soon!), or by compiling the bot yourself (instructions coming soon!).
Currently, Smexybot reads its configuration from the environment. It is assumed that you have then loaded the necessary configuration options into the environment prior to running the bot.
A set of example configuration options can be found in the file
.env.example
, included in this repository.
Detailed information regarding plugin configurations can be found in the
plugins' respective README.md
files.
Interacting with Smexybot is done via commands. Commands may be performed by DM,
or by @mention
ing the bot in a text channel on a server on which the bot is
present.
Coming soon!
Contributions are always welcome! If you have an idea for something to add (code, documentation, tests, examples, etc.) feel free to give it a shot.
Please read CONTRIBUTING.md before you start contributing.
Smexybot and it's constituent components and plugins are built primarily using
the excellent serenity.rs
framework by
zeyla.
The list of contributors to this project can be found at CONTRIBUTORS.md.
smexybot is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE, and LICENSE-MIT for details.