flux-bot
v0.0.4-fixed
Published
A Discord.js client extension for streamlined command handling, argument parsing, and interaction support.
Downloads
398
Maintainers
Readme
flux-bot
flux-bot is an advanced extension for Discord.js that simplifies the process of handling commands, argument parsing, and interactions for both slash and text-based commands.
Features
- Unified handling for slash and text-based commands.
- Argument parsing with validation and defaults.
- Permission and cooldown management.
- Dynamic command loading.
- Supports private and public commands.
Installation
Install flux-bot via npm:
npm install flux-bot
Usage
Creating a Client
To create a FluxClient instance, use the following example:
import { FluxClient } from 'flux-bot';
import { IntentsBitField } from 'discord.js';
const client = new FluxClient({
intents: [
IntentsBitField.Flags.Guilds,
IntentsBitField.Flags.GuildMessages,
],
allowTextCommands: true,
prefix: '!',
});
client.login('YOUR_BOT_TOKEN');
Adding Commands
Commands are defined using the Command
class. Here's an example of adding a command:
import Command from './Command';
client.loadCommands([
new Command({
name: 'ping',
description: 'Replies with Pong!',
execute: async (client, interop) => {
await interop.followUp('Pong!');
},
}),
]);
Events
FluxClient emits various events for handling errors and custom logic:
- commandNotFound
- argumentParsingError
- permissionDenied
- cooldownActive
- commandExecutionError
Example:
client.on('commandNotFound', ({ interaction, name }) => {
console.error(`Command not found: ${name}`);
});
Contributing
Contributions are welcome! Feel free to open an issue or submit a pull request.