Introduction
IRC remains widely used in open-source communities, but traditional desktop clients disconnect when you close them. The Lounge runs on a server and stays connected permanently, storing message history and delivering push notifications. You access it through a modern web interface that works on desktop and mobile.
What The Lounge Does
- Maintains persistent IRC connections on the server so you never miss messages
- Provides a responsive web UI with message search, link previews, and image thumbnails
- Supports multi-user mode where each user has their own IRC identity and configuration
- Delivers push notifications via the Web Push API when you are mentioned or receive private messages
- Stores message history in SQLite so you can scroll back through conversations across sessions
Architecture Overview
The Lounge is a Node.js application with an Express HTTP server and Socket.IO for real-time browser communication. On the backend, it maintains persistent TCP connections to configured IRC networks using the irc-framework library. Message history is stored in SQLite. The frontend is a Vue.js single-page application that communicates with the backend over WebSockets. Static assets are pre-built and served directly.
Self-Hosting & Configuration
- Install via npm, Yarn, or Docker; packages also available for Debian, Ubuntu, Arch, and Homebrew
- Configure in
~/.thelounge/config.jsfor port, theme, HTTPS, LDAP authentication, and file upload settings - Enable HTTPS directly or place behind a reverse proxy (Nginx, Caddy) for TLS termination
- Set
public: falsefor private mode requiring user accounts, ortruefor open access - Configure message storage backend (SQLite by default) and log rotation settings
Key Features
- Always-connected bouncer-style operation: the server stays on IRC even when your browser is closed
- Modern responsive UI with dark and light themes, message formatting, and emoji support
- Built-in file upload support for sharing images and files directly in chat
- LDAP authentication support for integrating with existing user directories
- Extensible with community themes and plugins via the package system
Comparison with Similar Tools
- WeeChat — powerful terminal IRC client with optional web relay; The Lounge provides a more polished web-first experience
- Quassel — client-server IRC with Qt desktop clients; The Lounge is browser-based with no client install
- ZNC — IRC bouncer without a built-in web client; The Lounge combines bouncer and client in one
- Element (Matrix) — modern chat protocol with IRC bridging; The Lounge is native IRC without protocol translation
- Convos — another web-based IRC client; The Lounge has a larger community and more active development
FAQ
Q: Can multiple users share one instance? A: Yes. In private mode, each user has their own account, IRC connections, and message history. Useful for teams or families.
Q: Does The Lounge support IRC over TLS? A: Yes. You can connect to IRC networks using TLS and configure client certificates for authentication with services like NickServ.
Q: How much storage does message history use? A: SQLite storage is efficient. A year of moderate IRC usage typically uses a few hundred megabytes. You can configure message retention limits.
Q: Can I access The Lounge on mobile? A: Yes. The web UI is fully responsive and works well on phones and tablets. Push notifications work through the browser's Web Push API.