Awesome IRC
A curated list of awesome IRC resources.
A list of tools, software & other resources related to the Internet Relay Chat (IRC) protocol.
IRC (Internet Relay Chat) is an open source protocol that can be used for multi-user text based communication through channels.
Contents
Clients
You use these to connect to IRC.
-
Textual - Very customizable, ZNC integration, iCloud sync ($4.99). (source )
macOS
-
LimeChat - One window for multiple servers, keyboard shortcuts, fast & stable. (source )
macOS
iOS
-
HexChat - Based on XChat, easy to use, spell check & multiple languages. (source )
Windows
macOS
Linux
-
gamja - A simple IRC web client. (source)
Web
-
Kiwi IRC - Powerful modern IRC messenger for the web. (source , demo)
Web
-
CIRC - Uses the chrome.sockets APIs to connect directly to IRC servers without needing a proxy. (source )
Chrome
-
Quassel - Distributed (clients can attach to and detach from a central core that stays permanently online. (source )
Linux
macOS
Windows
-
Yaaic - Multi-server/channel support, SASL support, Smooth channel scrolling / swiping. (source )
Android
-
relay.js - Focuses on making IRC less intimidating and easier to use.
Web
-
Circe - For use in Emacs, sane defaults.
Emacs
-
Smuxi - User-friendly, based on GNOME / GTK+. (source )
Linux
Windows
macOS
-
KvIRC - Free, portable, based on Qt GUI toolkit. (source )
Linux
macOS
Windows
-
Konversation - User-friendly client built on the KDE Platform. (source )
Linux
-
sic - Simple IRC client - a terminal client in less than 250 lines of C.
Linux
-
irssi - Terminal client, multi-protocol friendly for module authors, GPLv2.
Linux
macOS
Cygwin
BSD
-
Revolution IRC - Feature-full, actively maintained Android IRC client.
Android
-
AdiIRC - Never has a client offered such granular settings for every aspect of the IRC experience. (features, screenshots)
Windows
WINE
-
IRC for Android™ - Android/Chrome OS client for power users, with ZNC built-ins, notification logic, reliable DCC, keybinds for hardware keyboards, etc.
Android
ChromeOS
-
Iridium - Friendly IRC client built in Vala and GTK, designed for elementary OS. (source )
Linux
-
Goguma - An IRC client for mobile devices, from the creator of soju.
Android
Linux
More? Clients that include bouncers are found below.
Bouncers
Useful for disconnecting and reconnecting without losing the chat session.
Hosted
-
IRCCloud - Group chat for teams, friends, and communities. stay connected, chat from anywhere, and never miss a message (+client) (£0-£3.50/month).
Self-hosted
-
Convos - Always online web IRC client. (source )
Perl
JavaScript
Web
-
ZNC - Most popular. many different plugins. (source )
C++
-
BIP IRC Proxy - Always online, lightweight and secure Open Source IRC proxying with backlogging. (source)
C
-
TheLounge - Responsive, self-hosted & support for multiple users. (source , demo)
JavaScript
Node.js
Web
-
WeeChat - A fast, light and extensible chat client. (source )
Linux
macOS
Windows
-
soju - A user-friendly IRC bouncer.
Go
-
sms-webhook - A simple webhook to receive SMS messages on IRC.
Go
Daemons
Used for running your own IRC server or network.
-
ircd.js - Server will allow clients to connect, join channels, change topics; basic stuff.
-
InspIRCd - Modular, stable, written from scratch. (source )
-
miniircd - Very simple and limited.
-
ngIRCd - Portable and lightweight for small or private networks. (source )
-
Ergo - Modern server that’s portable and designed around specifications (bleeding-edge IRCv3 support).
-
RobustIRC - IRC server without netsplits. (source )
Services
Used to provide user accounts and bots like NickServ/ChanServ to your network.
-
Atheme - Designed for large networks with high scalability requirements. (source )
-
anope - Designed for flexibility and ease of use. (source )
Bots
IRC users which provide services for humans, e.g. integrations or information.
-
Eggdrop - Oldest IRC bot still in active development. Feature rich, uses Tcl scripting. (source )
C
-
Sopel - Tonnes of ready made features, tutorial, fully documented. (source )
Python
-
Limnoria - Robust, user friendly, developer friendly.
Python
-
Twitch Plays - Takes input from the chat and presses the corresponding key.
Python
-
Skybot - Main goals are simplicity and power.
Python
-
talkbackbot - Responds to configured trigger phrases with quotes from notable women. (source )
Python
-
lazybot - User-friendly and powerful.
Clojure
-
IRC-BF -
Brainfuck
-
geordi - Compiles and runs C++ code snippets.
C++
-
CloudBot - Simple, fast, expandable.
Python
-
yossarian-bot - Large default plugin set, Cinch-based.
Ruby
-
helga - Pluggable chat bot supporting multiple protocols.
Python
-
EveIRC - Extendable chat/channel/server-managenent service-providing bot. Using the Cinch Framework .
Ruby
-
BitBot - Modular, event-driven bot featuring a REST API, individual user settings and much more. (bitbot.dev)
Python
-
Cardinal - Python Twisted IRC bot with a focus on ease of plugin development.
Python
-
pyHoneybot - Python Twisted IRC bot with a focus on ease of plugin development. (source )
Python
-
wayback - An archiving tool with an IRC interface integrated with various archiving services.
-
milla - New generation LLM-powered bot with lua scripting support.
Go
Frameworks
Helpful to write bots or integrate IRC with applications.
-
node-irc
JavaScript
-
goirc - Event-based, stateful, lacking documentation.
Go
-
Hubot IRC Adapter - The IRC adapter for hubot.
JavaScript
-
go-ircevent - Event-based.
Go
-
slate-irc - Plugin system, simple api, arbitrary input stream, debug support.
JavaScript
-
PircBotX - Event based IRC Library with a straightforward API (updated fork of PircBot).
Java
-
IRC::Client -
Perl6
based extendable IRC client framework.
-
irccd - Flexible IRC bot customizable with JavaScript.
C++
.
Bridges
Sends messages back and forth.
-
discord-irc - Discord ↔ IRC.
JavaScript
-
dibridge - Discord ↔ IRC (with puppets)
Python
-
slack-irc - Slack ↔ IRC.
JavaScript
-
irc-slack - Slack ↔ IRC.
Go
-
BitlBee - XMPP, Jabber, Google Talk, MSN Messenger, Yahoo! Messenger, AIM, ICQ, Twitter API, HipChat ↔ IRC.
C
-
Biboumi - IRC gateway for XMPP clients
C
-
teleirc - Telegram ↔ IRC.
JavaScript
-
toxirc - Tox ↔ IRC.
C
-
skyweb2irc - Skype (webclient API) ↔ IRC.
Javascript
-
matterbridge - IRC ↔ Mattermost ↔ Discord ↔ XMPP ↔ Gitter ↔ Slack ↔ Discord ↔ Telegram ↔ etc.
Go
-
Heisenbridge - Bouncer-style Matrix IRC bridge
Python
-
Appservice-IRC - Gateway and bridge Matrix ↔ IRC
Javascript
-
matterircd - Matterbridge ↔ IRC, Slack ↔ IRC, Mastodon ↔ IRC.
Go
Channels
IRC channels.
Discovery
-
#ubuntu@Libera.Chat - Official Ubuntu support channel. (rules)
Networks
A collection of IRC servers is known as a network.
-
Libera.Chat - Network mostly focused on free and open source projects, run by former freenode staff.
-
Snoonet - Community of redditors and subreddits. (rules)
-
OFTC - Community for free and open source software communities.
-
LibertaCasa - Privacy endorsing community serving as a safe and open space for the discussion of various topics.
Articles
Articles and blog posts about IRC.
Guides
How-to’s, documentation and books.
-
#irchelp - A vast amount of reasonably up-to-date information.
Protocol
Information and resources about the IRC protocol itself.
Miscellaneous
Items that belong on the list but defy classification.
-
superseriousstats - Fast and efficient program to create statistics out of various types of chat logs.
PHP
Web
-
img2src - Convert images to halfblock ANSI or IRC, with a bunch of post-processing filters.
Rust
Use
The best ways to use this list are:
- By browsing the contents
- By using command + F to search the contents
This list also uses tags to help when searching the contents:
-
Language -
Python
, Java
, C++
, Go
, JavaScript
, Ruby
, C
etc.
-
Platform -
Web
, macOS
, Windows
, Linux
, Chrome
etc.
Credits
By Craig Davison and contributors.