A simple command handler for Discord bots.
npm install commands-easy-discordsh
npm install commands-easy-discord
`
š Usage
$3
Your project structure might look like this:
`
/my-bot
āāā /commands
ā āāā ping.js
āāā bot.js
`
$3
Create a file in the /commands folder, for example ping.js:
#### commands/ping.js
`js
module.exports = {
name: 'ping',
description: 'Replies with Pong!',
execute(message, args) {
message.reply('š Pong!');
}
};
`
In this file, you're defining the ping command. When someone types !ping in the chat, the bot will respond with "š Pong!".
$3
Create a bot.js file (or name it whatever you like) in your main project folder and import commands-easy-discord:
#### bot.js
`js
const { Client, GatewayIntentBits } = require('discord.js');
const { loadCommands } = require('commands-easy-discord');
require('dotenv').config();
const client = new Client({
intents: [
GatewayIntentBits.Guilds,
GatewayIntentBits.GuildMessages,
GatewayIntentBits.MessageContent
]
});
// Load commands from the 'commands' folder
const commands = loadCommands('./commands');
client.on('messageCreate', async (message) => {
if (!message.content.startsWith("!") || message.author.bot) return;
const args = message.content.slice(1).trim().split(/ +/);
const commandName = args.shift().toLowerCase();
const command = commands.get(commandName);
if (command) {
command.execute(message, args); // Execute the command
}
});
client.login(process.env.TOKEN); // Your bot token
`
$3
Once you've set up the code, you can start the bot by running the following command in the terminal:
`sh
node bot.js
`
Now, your bot will respond to commands like !ping and reply with "š Pong!".
š Features
ā
Automatic Command Loading ā All commands in the specified folder are automatically loaded.
ā
Prefix Commands Support ā Commands are triggered using a prefix (e.g., !).
ā
Easy to configure ā The command handler is simple to integrate and use.
ā
Clean Code Structure ā Each command is placed in its own file in the commands folder.
š Directory Structure
- /commands ā This folder contains all your command files.
- bot.js ā This file contains the Discord bot setup and command handler.
---
$3
- Command not found: Ensure that the name property in your command file is correctly set (e.g., name: 'ping').
- Bot is not responding: Make sure the bot is logged in with a valid token, and that the commands folder exists and contains correctly named files.
---
š License
This package is licensed under the MIT License.
``