https://github.com/waymondrang/echelon
A modular Discord bot powered by Discord.js and MongoDB
https://github.com/waymondrang/echelon
discord discord-bot mongodb nodejs
Last synced: 6 months ago
JSON representation
A modular Discord bot powered by Discord.js and MongoDB
- Host: GitHub
- URL: https://github.com/waymondrang/echelon
- Owner: waymondrang
- Created: 2020-07-13T19:29:02.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2023-07-12T06:29:44.000Z (about 2 years ago)
- Last Synced: 2024-05-01T18:42:10.765Z (over 1 year ago)
- Topics: discord, discord-bot, mongodb, nodejs
- Language: JavaScript
- Homepage:
- Size: 144 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Echelon
A modular Node.js Discord bot powered by [Discord.js](https://discord.js.org/) and [MongoDB](https://www.mongodb.com/).
With a focus on expandability, Echelon was engineered to streamline the process of adding new commands and information.
# Features
Echelon comes equipped with some helpful features out-of-the-box.
## Custom Profanity Filter
Within the `banned-words.json` file, there are two arrays—one named `banned` and the other `special`. The `banned` array will contain a list of plaintext words that are to be blocked. Any premade regex expressions will go into the `special` array.
Here is an example:
```
{
"banned": ["apple", "banana", "orange"],
"special": ["\\by+\\s*o+\\b", "\\bh+\\s*i+\\b"]
}
```##### The following words *will* trigger this configuration:
`bapple` `app pple` `bannnana` `b a n a n a` `oorangege` `yoo` `hhi`
##### The following words *will not* trigger the configuration:
`b a n n n a n a` `byoo` `hiya` `yoop`
## Fun and Handy Commands
[Find out more about the commands!](https://github.com/waymondrang/echelon/blob/master/commands/readme.md)
### Command Prefix
The default command prefix for Echelon is `!`, but can be easily changed in the `config.json` file.
## MongoDB Support
By linking Echelon to a MongoDB database, Echelon will collect simple information about the users in each server, including the number of commands used and the amount of bad words typed. A different database is used for each server, making user data independent.
If no MongoDB database is linked, the bot will still work, but some commands will be disabled, as they rely on the database.