A Discord bot for server and community management with a focus on school/fun related commands.
- Role Management
- Customizable Prefix
- Python Repl
- Message Logging
- Moderation
- Tags
- Channel Generation
- Welcome Messages
- Expression Evaluator
- Meme Generator and so much more
Clembot is in current active development so check back often to see whats new!!
To invite Clembot to your server click this link: Clembot Invite
We are a community focused on learning and acceptance; anyone is welcome. If you have an idea or a feature you would like to contribute, feel free to open an issue and we as a community can begin discussion.
To start developing and contributing to this project, please see CONTRIBUTING.md
The bot is set up in a simple way. There are 3 layers, the Cog layer, the Service layer and the Data layer.
- Cog layer - This is where the frontend bot command code resides. Anything that you directly use to interface with discord goes in this layer.
- Service layer - This is where all things that are bot related but not controlled through front end commands live. Things like user tracking, event handling etc all go in here.
- Data layer - This is the abstraction on top of the sqlite database. This layer is a collection of repositories which contain the code to query and insert from the DB.
The bot loads Cogs and Services dynamically. To create a new command simply create a class that inherits from Command.Cog and defines a setup function in module scope at the bottom. See example_cog.py for an example.
The bot does the same thing for services, to see how to define a service, see example_service.py