Centra is in development and an invite link is not yet public
- Straight-forward moderation tools
- Kicking
- Banning (with optional duration for temp bans*)
- Warnings (with pardoning)
- Muting (with optional duration for timed mutes)*
- Message purging (with filters)*
- Slowmode*
- Sever/channel lockdown*
- Useful server utilities
- Server/user/role/avatar information
- Invite management
- Reminders*
- Polls*
- Fully featured, persistent punishment history with reason and duration* updating
- Configurable logging of all server events
- Member joins, edits and leaves
- Channel creation, edits and deletion
- Server edits*
- Role creation, edits and deletion*
- Tags system with mention option and moderator-only functionality
- Auto-response system based on specified keyword matches
- Private per-server user notes shared with all moderators to help keep notes on particular users
- Configurable auto moderation with automatic warning issuing
- Word filtering
- Spam filtering (message, emoji)*
- Anti-hoisting*
- Name normalisation (ie.
𝓣𝓱𝓪𝓽𝓣𝓸𝓷𝔂𝓫𝓸toThatTonybo) - Invite blocking*
- Shortlink blocking (such as bit.ly, known scam links)
- Fully configurable trigger/threshold system to issue punishments based on certain thresholds*
- Set thresholds such as: mute at 3 warnings, kick at 3 mutes
- Hooks with auto moderation to provide full control over auto moderation
- Highly customizable server configuration to allow granular control of all features***
- Granular per-role node-based permission, allowing specific control of features for each role****
* = indicates feature coming soon
** = banning is functional, temp banning coming soon
*** = not all configuration features are present or complete
**** = permissions are limited to role based mod and admin categories until the web dashboard can proceed, as such a granular system would be too complicated to complete, use or maintain through commands
Hosting a local version of Centra is currently only supported for development purposes. Local hosting will be supported once the bot is considered released and stable.
- Node.js v12 or above
- A MongoDB instance
- TypeScript (
npm install --global typescript) - Yarn (
npm install --global yarn)
- Clone the repo into a local directory:
git clone https://github.com/centrabot/centra.git - Change into the directory and install dependencies:
yarn - Create a database in your MongoDB instance with the collections
serversandreminders - Create a copy of
.env.exampleand name it.env, and fill in the fields with appropriate information
Before running the bot, the source code must be compiled to JavaScript. This can be done in two ways:
- Running
tscevery time the source code changes - Running
tsc --watchin a separate console process to automatically compile new changes
Then, you can start the bot with node:
$ node dist(As of right now, there is no separate development mode or variable, however it is coming soon)
- NinoDiscord/Nino for the shortlinks.json (used with permission)
- IonicaBizau/regex-emoji's :emoji: regex
(c) 2021 ThatTonybo
Licensed under the MIT License
