1.2.1 • Published 3 years ago

simply-discord v1.2.1

Weekly downloads
251
License
ISC
Repository
github
Last release
3 years ago

forthebadge forthebadge forthebadge

NPM

Simply Discord

A simple Discord bot command handler that is easy to use, built for Discord.js

const { client } = new SimplyDiscord({
  defaultPrefix: '-',
  commandsDir: './commands',
  eventsDir: './events',
  allowDMs: false
})

.setGuildPrefix('GUILD_ID', 'NEW_PREFIX')
.setCommandsDir('NEW_DIRECTORY')
.setEventsDir('NEW_DIRECTORY')
.setDefaultPrefix('NEW_DEFAULT_PREFIX')
.toggleDMs()
.reload();

Params:

ParamTypeInfo
clientDiscord.ClientThe Discord client, if not passed one will be created
optionsobjectMore info below

Available Options:

OptionTypeDefaultInfo
optionsobjectundefinedOptions to configure the handler
options.defaultPrefixstring!Default prefix to use in-case of no guild prefix
options.commandsDirstring./commandsFolder containing all your commands
options.eventsDirstring./eventsFolder containing your event files
options.allowDMsbooleantrueBot should respond in DMs?

Handler Functions:

// Example Functions
const Handler = new SimplyDiscord();

// Set the guild prefix
Handler.setGuildPrefix('714478443099873310', '-');

// Set the dir but do not reload commands
Handler.setCommandsDir('./commands/sub', false);

// Set the events dir
// By default it will reload commands/events
Handler.setEventsDir('./events/new');

// Manually reload commands/events (Default will reload both)
Handler.reload('commands'); // Reload just commands
Handler.reload('events'); // Reload just events
Handler.reload(); // Reload both

// Toggle DMs (Specify true/false or it will flip the current state)
console.log(Handler.allowDMs) // Output -> True
Handler.toggleDMs();
console.log(Handler.allowDMs) // Output -> False
FunctionParamsInfo
setCommandsDir('Directory')Update the folder where your commands are located
setDefaultPrefix('Prefix')Update the default prefix
setGuildPrefix('GuildID', 'Prefix')Set the guild prefix to the client.prefixes collection
setEventsDir('Directory')Update the folder where your events are located
toggleDMs(true/false)Toggle if DMs should be allowed, sending nothing with switch it
reload('commands'/'events')Reload commands/events or both

Usage

Using the handler:

const Discord = require('discord.js');
const SimplyDiscord = require('simply-discord');
const client = new Discord.Client();

new SimplyDiscord(client, {
  commandsDir: 'lib/commands'
});

Note: Simply Discord will create a client for you if you don't provide one

const SimplyDiscord = require('simply-discord');

/* Client is a property of the SimplyDiscord Class, use this to access the Discord Client */
const { client } = new SimplyDiscord({ commandsDir: 'lib/commands' });

/* Assign it to a variable and use that to access the props and functions */

const simply = new SimplyDiscord({ commandsDir: 'lib/commands' });
const client = simply.client;

/*  Minimum usage  */

const simply = new SimplyDiscord();

Command Structure Example:

module.exports = {
  name: 'ping',
  aliases: ['p'],
  category: 'Utils',
  cooldown: 10, /* In seconds, this example is 10 seconds */
  async run ({ client, handler, message, args }) {
    // Your command code ...
  }
};

Event Structure Example:

module.exports = {
  name: 'ready',
  once: true,
  async run (client, handler, EVENT_PARAMS) {
    /* 
       EVENT_PARAMS are any params from the event itself, 
        check the Discord.js Docs for more info.
    */ 
  }
};

TODO

1.2.1

3 years ago

1.2.0

3 years ago

1.1.8

3 years ago

1.1.7

3 years ago

1.1.6

3 years ago

1.1.5

3 years ago

1.1.4

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago