A serverless optimized interaction based Discord bot. This is an all-in-one bot with multiple functions custom-built for university clubs and societies.
This bot is the new generation of the original KoalaBot project. This project is an open source discord bot with a development team of students and alumni from around UK and Europe.
- Verify
- ColourRole
- TwitchAlert
- Announce - Too intensive on Rate Limit
- Vote - Maybe replaced by Polls
- ReactForRole - Replaced by Discord Onboarding
- TextFilter - Replaced by Discord AutoMod
CloudFormation will be used to spin up the AWS services defined in the Cloud Architecture
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
This application uses python 3.11 which you can download here
All python packages you need to run on serverless can be found in the lambda-requirements.txt. Before running the bot you must install these as so:
$ pip3 install -r lambda-requirements.txt
If you would like to run a server version locally, you will instead need to install from requirements.txt
$ pip3 install -r requirements.txt
This project does not provide .env
support by default to reduce package size for serverless.
You will instead have to provide the environment variables either as part of serverless deployment, or at runtime if running the server.
The environment variables required are listed below:
PUBLIC_KEY
: The public key from the application in the Discord developers portal
DISCORD_TOKEN
: The secret token from the bot in the Discord developers portal
You can use the Infrastructure as Code to spin up your serverless environment.
If you are using a server the following can be used:
$ python3 ./kb2/main.py
This project is licensed under the MIT License - see the LICENSE file for details
- KoalaBot Website: koalabot.uk
- KoalaBot Support Discord: discord.koalabot.uk