Roomba V2 is a discord bot based on multiple librairies.
The bot contains multiple moderation commands as well as music commands and other misc...
Discord JS V13 | Discord Akairo | Discord Music Player | Mongo DB (mongoose) |
---|---|---|---|
client
└── src
├── commands
│ ├── dev
│ │ ├── eval.js
│ │ ├── restart.js
│ │ └── updateAll.js
│ ├── infos
│ │ ├── serverinfo.js
│ │ └── userinfo.js
│ ├── misc
│ │ ├── help.js
│ │ ├── ping.js
│ │ ├── prefix.js
│ │ └── setting.js
│ ├── moderation
│ │ ├── ban.js
│ │ └── kick.js
│ └── music
│ ├── loop.js
│ ├── nowPlaying.js
│ ├── pause.js
│ ├── play.js
│ ├── playlist.js
│ ├── progression.js
│ ├── shuffle.js
│ ├── skip.js
│ ├── stop.js
│ └── volume.js
├── index.js
├── inhibitors
│ ├── blacklist
│ │ ├── channelBlacklist.js
│ │ ├── guildBlacklist.js
│ │ ├── userGlobalBlacklist.js
│ │ └── userGuildBlacklist.js
│ └── enabledModules
│ └── musicModule.js
├── listeners
│ ├── client
│ │ ├── guildCreate.js
│ │ ├── guildDelete.js
│ │ ├── guildMemberAdd.js
│ │ ├── guildMemberRemove.js
│ │ └── ready.js
│ └── commandHandler
│ ├── commandBlocked.js
│ ├── cooldown.js
│ └── missingPermissions.js
├── logger
│ ├── BaseLogProvider.js
│ ├── LogProviders.js
│ └── MusicLogProvider.js
├── structures
│ ├── Models.js
│ ├── MusicPlayer.js
│ ├── Providers.js
│ └── RoombaClient.js
└── util
├── canvasFunctions.js
├── colors.js
├── config.js
├── functions.js
└── musicPlayerEvents.js
Name | Hex | C |
---|---|---|
darkpurple | #9400D3 |
You need to rename the .env.example
to .env
and fill in the information. Open the .env file with a text editor and ou can give the information without string if there is no space between the data otherwise you can put in string, such as "Something"
.
CLIENT_TOKEN
can be found in the discord developper section : Here
CLIENT_ID
can be found in the discord developper section : Here
MONGO_STRING
can be found when you create your mongoDB cluster : Here
OWNER_ID
can be found when right clicking on your account on discord with developer settings activated
PREFIX
you can give a default prefix which will be added into database
GUILDSLASH
you can give a guild/server ID which allows you to test or limit to specific guild/server the slash commands. If you delete the value then the slash commands will be added globally (it can take between 1-2 hours to see the changes if slash commands are used globally)
Clone the project from github
sudo git clone https://github.com/AlexArtaud-Dev/Roomba-V2
Go to the project directory
cd Roomba-V2/
Install dependencies
sudo npm install
Start the server with node
sudo npm run start
Start the server with nodemon
// Install nodemon
sudo npm i nodemon -g
// Run with nodemon
sudo npm run dev
Start the server with pm2
// Install pm2
sudo npm i pm2 -g
// Run with pm2
sudo npm run devmod
Stop pm2
server
sudo npm run stop
-
Add more commands
-
Add slash commands
-
Add language config file to swap between languages
-
Add theme config file
- Created a sub-class MusicPlayer that extend Player to make the events handled automaticaly on creation
- Created Log Provider with extended class to generate custom log outputs inside console and inside database, sorted by type
- Splitted mongoose models into differents files
For support, dm me on discord |Alex|#3227.