Skip to content

alvarocastro/discord-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

discord-bot

NPM Maintainability status Code style: XO

Modular library to easily build powerful discord bots.

Install

npm install @alvarocastro/discord-bot

Usage

Just instantiate the bot, make it login with your discord token and you are done!

// index.js
import { Bot, commands } from '@alvarocastro/discord-bot';

const bot = new Bot({
	commands: commands
});

bot.login('YOUR_DISCORD_TOKEN');

You can pass an array of commands to the bot, the bot by itself has no commands but the library already comes with some simple (and boring) commands you can use, but you can easily build your own.

Let's make a command to get cat images:

// commands/cat.js
import { ChatCommand } from '@alvarocastro/discord-bot';

export default class CatCommand extends ChatCommand {
	constructor () {
		super(...arguments);
		this.name = 'cat'; // This will be used as the name to invoke the command, eg: !cat
	}

	run ({channel}, [count]) { // Our command will be able to accept a parameter, eg: !cat 3
		count = Number(count);
		count = count > 1 ? count : 1;

		for (let i = 0; i < count; i++) {
			channel.send('https://cataas.com/cat');
		}
	}
}

Done! Our command is created, now we have to add it to our bot, let's go back to our index.js file.

// index.js
import { Bot, commands } from '@alvarocastro/discord-bot';
import CatCommand from './commands/cat.js';

const bot = new Bot({
	commands: [
		...commands,
		CatCommand
	]
});

bot.login('YOUR_DISCORD_TOKEN');

Now our bot is ready to fill our channels with cats!

Contributing

Contributions are always welcome! Feel free to fix any bug you find or propose commands to add to the bot.

Support

If you use this package please consider starring it :)

Releases

No releases published

Packages

No packages published