Vycord is a discord bot with a managed user permissions system so that commands can be written easier in single javascript classes. The goal is to make plugin creation for commands for discord easier to write and less worry about managing who can use the commands
Assign a command to a group and it will keep the bot from executing that command
The commands can be written in an ES6 class with the message object given by the Discord.js API. The command class that is used to extend your code has features like collections and stringify arguments passed after a command. This allows for complex interactions with less code! Check out the Pixibay API command for an example.
The pixibay command can manage mulitple instances of itself on a chat so users can search though multiple queries without having to make commands to activate an older instance.
These user features are more friendly and useful when you have chats that are very active and you don't want to clog up the feed!
To deploy this app you need a MySQL database setup to connect to. Use the command below in the root folder of the app and install the packages required
npm install
Afterwards create a file named settings.json and insert the Discord bot token you can create using the Discord developer panel. To use the example Pixibay API you can get a key for it by signing up for Pixibay here
{
"token" : "<Discord bot token>",
"prefix" : "!",
"Pixibay": "<API key here>",
"mysql" : {
"user" : "username",
"password" : "password",
"host" : "host_ip",
"database" : "database_name"
},
}
You can run the SQL file found in db/vycord.sql to have the correct tables.
The database is structured like so:
Once all connected run in the root folder
node main.js