https://github.com/alvarocastro/discord-bot
Modular library to build powerful discord bots
https://github.com/alvarocastro/discord-bot
bot discord discord-bot discord-bot-framework discord-bot-maker
Last synced: about 2 months ago
JSON representation
Modular library to build powerful discord bots
- Host: GitHub
- URL: https://github.com/alvarocastro/discord-bot
- Owner: alvarocastro
- License: mit
- Created: 2020-12-20T18:14:35.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-08T02:09:06.000Z (over 5 years ago)
- Last Synced: 2025-01-25T11:26:19.348Z (over 1 year ago)
- Topics: bot, discord, discord-bot, discord-bot-framework, discord-bot-maker
- Language: JavaScript
- Homepage:
- Size: 161 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# discord-bot
[](https://www.npmjs.com/package/@alvarocastro/discord-bot)
[](https://codeclimate.com/github/alvarocastro/discord-bot/maintainability)
[](https://github.com/xojs/xo)
Modular library to easily build powerful discord bots.
- [Install](#install)
- [Usage](#usage)
- [Contributing](#contributing)
- [Support](#support)
## Install
```bash
npm install @alvarocastro/discord-bot
```
## Usage
Just instantiate the bot, make it login with your discord token and you are done!
```js
// 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:
```js
// 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.
```js
// 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 :)