|Evert Prants 75bc872a38||8 months ago|
|.vscode||8 months ago|
|src||8 months ago|
|.gitignore||8 months ago|
|.npmignore||8 months ago|
|.prettierrc||8 months ago|
|README.md||8 months ago|
|package-lock.json||8 months ago|
|package.json||8 months ago|
|tsconfig.json||8 months ago|
Zero dependencies library for creating anything using the IRC protocol - bots, clients, you name it. It includes a variety of utilities, such as a nick list class that manages mode prefixes for you, NickServ authentication checker and message formatting (colors!).
There is an example usage documented in src/examples/connection-test.ts, but basically you have two ways to create an IRC client connection:
- Use the
IRCBotclass. This just takes connection options and it uses
IRCSocketConnector(so it will not work in the browser!)
- Use the
IRCConnectionclass directly. To use this, you need to provide your own connector in addition to the options.
The connection options are documented in detail here, but the most important are:
host- Server host.
nick- Your nickname.
port- Server port, defaults to 6667.
ssl- Use secure connection.
channels- String-list of channels to join on connect.
This module provides two connectors:
IRCSocketConnector for Node.js usage (
IRCWebSocketConnector for browser usage (WebSockets). You can always write your own if you need something different.
These are not included in the main module! You need to import them from
@icynet/irclib/lib/connector/[..]. This is to prevent browser bundlers from including
The main classes use a special custom TypedEventEmitter to send events.
Basically, you're mostly just going to need the
message event for IRC.
Currently, this module only supports SASL authentication capability.