tmijs-commander
v2.2.3
Published
A simple library to easily implement commands into a TMIJS client.
Downloads
8
Maintainers
Readme
Introduction
Commander is a library to simplify command integration into a tmi.js client (Twitch Bot).
Features:
- Easily register chat commands
- Parse arguments into an accessible array
- Handle command execution with a class or function
- Limit a command to only work in certain channels
- Disable and enable commands through code
- Written in Typescript, with type definitions included
Installation
NPM
$ npm i tmijs-commander --save
YARN
$ yarn add tmijs-commander
Build Yourself (Windows / Git / NodeJS )
$ git clone https://github.com/Zyrakia/TMIJS-Commander.git
$ cd tmijs-commander
$ npm install
Get Started
View the quick start guide below, or view the full docs to get a broader insight on what Commander can do for you.
Quick Start
This snippet demonstrate how to register the command !hello
to your client. I will be using Typescript, because it is what the library is built it, and I highly recommend you do the same.
import tmi from "tmi.js"
import { Commander, CommandExecutor, CommandOrigins } from "tmijs-commander";
const options = {YOUR CLIENT OPTIONS HERE};
const client = tmi.client(options);
client.connect().then(() => {
const commander = new Commander(client);
commander.registerCommand("!hello", new HelloCommand());
});
class HelloCommand extends CommandExecutor {
public invoke(origins: CommandOrigins) {
origins.client.say(origins.channel, "Hello World!");
}
}
When a user now executes the command !hello
the invoke
method will be called on the linked executor, which says Hello World!
in the channel that the command was sent in.