# The Lounge — Self-Hosted Modern Web IRC Client > A modern, responsive, cross-platform web IRC client that you can self-host for always-on chat with push notifications and file sharing. ## Install Save as a script file and run: # The Lounge — Self-Hosted Modern Web IRC Client ## Quick Use ```bash npm install -g thelounge thelounge start thelounge add myuser # Open http://localhost:9000 ``` ## Introduction The Lounge is a self-hosted web IRC client that keeps you connected to IRC networks around the clock. It runs as a Node.js server, storing your session so you never miss messages, and serves a responsive web UI accessible from any browser or device. ## What The Lounge Does - Connects to any IRC network and stays online 24/7 as a bouncer - Serves a responsive web interface with desktop and mobile push notifications - Stores chat history in a searchable per-user log (SQLite or file-based) - Supports file uploads with built-in image previews and link metadata expansion - Manages multiple users with individual IRC network configurations ## Architecture Overview The Lounge is a Node.js application using Express for the HTTP layer and Socket.IO for real-time communication with the browser. Each user's IRC connections are managed server-side, persisting across browser sessions. The frontend is built with Vue.js and supports theming. Message storage uses SQLite by default, with configurable retention. ## Self-Hosting & Configuration - Install globally via npm or use the official Docker image - Configure `~/.thelounge/config.js` for bind address, port, HTTPS, and file upload limits - Add users with `thelounge add ` (password is set interactively) - Run behind Nginx or Caddy with WebSocket proxy for HTTPS termination - Enable LDAP authentication for team deployments via a plugin ## Key Features - Always-on IRC bouncer with message history sync across devices - Push notifications via the Web Push API on mobile and desktop - Inline link previews with Open Graph metadata and image thumbnails - Multi-user support with per-user network and channel configuration - Customizable themes and a compact mode for power users ## Comparison with Similar Tools - **WeeChat + Glowing Bear** — Terminal IRC client with optional web frontend; more complex setup - **Quassel** — Split-architecture IRC client with Qt desktop app; no built-in web UI - **Convos** — Perl-based web IRC client; simpler but fewer features - **Kiwi IRC** — Web IRC client often used as a gateway; less focus on bouncer functionality - **ZNC + web client** — Dedicated IRC bouncer with separate web frontend; more modular but more parts to manage ## FAQ **Q: Does The Lounge work as an IRC bouncer?** A: Yes. It maintains persistent connections to IRC networks and replays missed messages when you reconnect your browser. **Q: Can I use it in public mode without user accounts?** A: Yes. Set `public: true` in the config to allow anonymous users with ephemeral sessions (no message persistence). **Q: How do I enable HTTPS?** A: Either configure TLS certificates directly in The Lounge config or terminate HTTPS at your reverse proxy. **Q: Does it support IRC features like SASL and client certificates?** A: Yes. Per-network settings support SASL PLAIN, EXTERNAL, and client TLS certificates for authentication with IRC networks. ## Sources - https://github.com/thelounge/thelounge - https://thelounge.chat --- Source: https://tokrepo.com/en/workflows/asset-e5a9df69 Author: Script Depot