IRC
repo: davisonio/awesome-irc
category: Miscellaneous
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
- Bouncers
- Daemons
- Services
- Bots
- Encryption
- Frameworks
- Channels
- Networks
- Articles
- Guides
- Protocol
- Miscellaneous
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) macOSiOS
HexChat - Based on XChat, easy to use, spell check & multiple languages. (source) [Windows](/@harrisonqian/awesome/wiki/platforms/windows)macOS[Linux](/@harrisonqian/awesome/wiki/platforms/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](/@harrisonqian/awesome/wiki/platforms/linux)macOS[Windows](/@harrisonqian/awesome/wiki/platforms/windows)
Circe - For use in Emacs, sane defaults. [Emacs](/@harrisonqian/awesome/wiki/editors/emacs)
Smuxi - User-friendly, based on GNOME / GTK+. (source) [Linux](/@harrisonqian/awesome/wiki/platforms/linux)[Windows](/@harrisonqian/awesome/wiki/platforms/windows)macOS
KvIRC - Free, portable, based on Qt GUI toolkit. (source) [Linux](/@harrisonqian/awesome/wiki/platforms/linux)macOS[Windows](/@harrisonqian/awesome/wiki/platforms/windows)
Konversation - User-friendly client built on the KDE Platform. (source) [Linux](/@harrisonqian/awesome/wiki/platforms/linux)
sic - Simple IRC client - a terminal client in less than 250 lines of C. [Linux](/@harrisonqian/awesome/wiki/platforms/linux)macOS
irssi - Terminal client, multi-protocol friendly for module authors, GPLv2. [Linux](/@harrisonqian/awesome/wiki/platforms/linux)macOSCygwinBSD
Revolution IRC - Feature-full, actively maintained Android IRC client. [Android](/@harrisonqian/awesome/wiki/platforms/android)
AdiIRC - Never has a client offered such granular settings for every aspect of the IRC experience. (features, screenshots) [Windows](/@harrisonqian/awesome/wiki/platforms/windows)WINE- [
IRC for Android™](https://www.countercultured.net/android/) - Android/Chrome OS client for power users, with ZNC built-ins, notification logic, reliable DCC, keybinds for hardware keyboards, etc. AndroidChromeOS - Iridium - Friendly IRC client built in Vala and GTK, designed for elementary OS. (source)
[Linux](/@harrisonqian/awesome/wiki/platforms/linux) - mIRC - One of the most popular IRC clients for Windows, with a built-in scripting language.
[Windows](/@harrisonqian/awesome/wiki/platforms/windows) - ObsidianIRC - Modern WebSocket IRC client with Discord-like UI. (source)
[Linux](/@harrisonqian/awesome/wiki/platforms/linux)[Windows](/@harrisonqian/awesome/wiki/platforms/windows)macOS[Android](/@harrisonqian/awesome/wiki/platforms/android)iOSWeb - XChat - Precursor to HexChat, multi-platform graphical IRC client.
[Windows](/@harrisonqian/awesome/wiki/platforms/windows)[Linux](/@harrisonqian/awesome/wiki/platforms/linux) - ircII - One of the oldest IRC clients, initially released in 1989.
[Linux](/@harrisonqian/awesome/wiki/platforms/linux)macOS - BitchX - Terminal-based client popular on Unix-like systems. (screenshots)
[Linux](/@harrisonqian/awesome/wiki/platforms/linux)macOS[Windows](/@harrisonqian/awesome/wiki/platforms/windows) - Goguma - An IRC client for mobile devices, from the creator of soju.
[Android](/@harrisonqian/awesome/wiki/platforms/android)[Linux](/@harrisonqian/awesome/wiki/platforms/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).
- iOS App - Official.
Objective-C - Android App - Official.
[Java](/@harrisonqian/awesome/wiki/programming-languages/java) - Nimbus - Standalone client.
macOSObjective-C
- iOS App - Official.
Self-hosted
Convos - Always online web IRC client. (source) [Perl](/@harrisonqian/awesome/wiki/programming-languages/perl)[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/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](/@harrisonqian/awesome/wiki/programming-languages/javascript)[Node.js](/@harrisonqian/awesome/wiki/platforms/node-js)Web
WeeChat - A fast, light and extensible chat client. (source) [Linux](/@harrisonqian/awesome/wiki/platforms/linux)macOS- soju - A user-friendly IRC bouncer.
Go - sms-webhook - A simple webhook to receive SMS messages on IRC.
Go - psyBNC - Multi-user, permanent IRC bouncer with encryption support.
[Linux](/@harrisonqian/awesome/wiki/platforms/linux)
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). (source)
- UnrealIRCd - Modular, advanced IRCd serving thousands of networks since 1999. (source)
- 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](/@harrisonqian/awesome/wiki/programming-languages/python) - Limnoria - Robust, user friendly, developer friendly.
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - Twitch Plays - Takes input from the chat and presses the corresponding key.
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - Skybot - Main goals are simplicity and power.
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - lazybot - User-friendly and powerful.
[Clojure](/@harrisonqian/awesome/wiki/programming-languages/clojure) - IRC-BF -
Brainfuck - geordi - Compiles and runs C++ code snippets.
C++ - CloudBot - Simple, fast, expandable.
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - yossarian-bot - Large default plugin set, Cinch-based.
[Ruby](/@harrisonqian/awesome/wiki/programming-languages/ruby) - helga - Pluggable chat bot supporting multiple protocols.
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - EveIRC - Extendable chat/channel/server-managenent service-providing bot. Using the Cinch Framework.
[Ruby](/@harrisonqian/awesome/wiki/programming-languages/ruby) - BitBot - Modular, event-driven bot featuring a REST API, individual user settings and much more. (bitbot.dev)
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - Cardinal - Python Twisted IRC bot with a focus on ease of plugin development.
[Python](/@harrisonqian/awesome/wiki/programming-languages/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
Encryption
Plugins and tools for encrypting IRC messages.
- irssi-otr - Off-the-Record (OTR) messaging plugin for irssi.
C - weechat-otr - Off-the-Record (OTR) messaging plugin for WeeChat.
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - FiSH-irssi - Blowfish encryption in ECB/CBC modes with Diffie-Hellman key exchange for irssi.
C
Frameworks
Helpful to write bots or integrate IRC with applications.
- node-irc
[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - goirc - Event-based, stateful, lacking documentation.
Go - Hubot IRC Adapter - The IRC adapter for hubot.
[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - go-ircevent - Event-based.
Go - slate-irc - Plugin system, simple api, arbitrary input stream, debug support.
[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - PircBotX - Event based IRC Library with a straightforward API (updated fork of PircBot).
[Java](/@harrisonqian/awesome/wiki/programming-languages/java) - IRC::Client -
Perl6based extendable IRC client framework. - irccd - Flexible IRC bot customizable with JavaScript.
C++.
Bridges
Sends messages back and forth.
- discord-irc - Discord ↔ IRC.
[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - dibridge - Discord ↔ IRC (with puppets)
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - Dis4IRC - Discord ↔ IRC.
[Kotlin](/@harrisonqian/awesome/wiki/programming-languages/kotlin) - slack-irc - Slack ↔ IRC.
[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - irc-slack - Slack ↔ IRC.
Go - BitlBee - XMPP, Jabber, Google Talk, MSN Messenger, Yahoo! Messenger, AIM, ICQ, Twitter API, HipChat ↔ IRC.
C - teleirc - Telegram ↔ IRC.
[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - toxirc - Tox ↔ IRC.
C - skyweb2irc - Skype (webclient API) ↔ IRC.
[Javascript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - matterbridge - IRC ↔ Mattermost ↔ Discord ↔ XMPP ↔ Gitter ↔ Slack ↔ Discord ↔ Telegram ↔ etc.
Go - Heisenbridge - Bouncer-style Matrix IRC bridge
[Python](/@harrisonqian/awesome/wiki/programming-languages/python) - Appservice-IRC - Gateway and bridge Matrix ↔ IRC
[Javascript](/@harrisonqian/awesome/wiki/programming-languages/javascript) - matterircd - Matterbridge ↔ IRC, Slack ↔ IRC, Mastodon ↔ IRC.
Go
Channels
IRC channels.
Discovery
- netsplit.de Search - Searches 563 different networks.
- KiwiIRC Search - Searches 318 different networks.
Platforms
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.
- [Please don't use Slack for FOSS projects](https://drewdevault.com/2015/11/01/Please-stop-using-slack.html) - Drew DeVault's Blog.
- IRC is dead, long live IRC - Pingdom.
- IRC Has Lost 60% Of Its Users Since 2003, But Life As A Robot Is Just Beginning - Alex Williams (TechCrunch).
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.
- IRCv3 Working Group - A group of IRC software authors working to enhance, improve, maintain and standardize the IRC protocol. (source)
- Modern IRC Documents - An attempt to write an update to the original IRC protocol. documentation (source)
- IRC Definition Files - Lists of numerics, modes, ISUPPORT tokens and other protocol details. (source)
- grawity's IRC docs - Collection of misc IRC protocol documentation.
- Protocol Statistics - Statistics around the server software in use on networks today. (source)
- IRC Parser Tests - A CC0 set of test suites, to ensure IRC message parsers are consistent.
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.
PHPWeb - img2src - Convert images to halfblock ANSI or IRC, with a bunch of post-processing filters.
[Rust](/@harrisonqian/awesome/wiki/programming-languages/rust)
Use
The best ways to use this list are:
- By browsing the contents
- By using <kbd>command</kbd> + <kbd>F</kbd> to search the contents
This list also uses tags to help when searching the contents:
- Language -
[Python](/@harrisonqian/awesome/wiki/programming-languages/python),[Java](/@harrisonqian/awesome/wiki/programming-languages/java),C++,Go,[JavaScript](/@harrisonqian/awesome/wiki/programming-languages/javascript),[Ruby](/@harrisonqian/awesome/wiki/programming-languages/ruby),Cetc. - Platform -
Web,macOS,[Windows](/@harrisonqian/awesome/wiki/platforms/windows),[Linux](/@harrisonqian/awesome/wiki/platforms/linux),Chromeetc.
Credits
By Craig Davison and contributors.