- 16. Sep
Quassel IRC is a modern, cross-platform, distributed IRC client based on the Qt framework. Distributed means that one (or multiple) client(s) can attach to and detach from a central core that stays permanently online -- much like the popular combination of screen and a text-based IRC client such as WeeChat, and similar to (but much more featureful than) so-called BNCs.
Re-attaching your client will show your IRC session in the same state as you left it in (plus whatever happened while you were gone), and this even when you re-attach from a different location. In addition, Quassel IRC can be used like a traditional client, with providing both client and core functionality in one binary. This so- called "Monolithic Client" completely hides the distributed nature, so for a purely local installation, Quassel IRC can be setup very easily.
Cross-platform means that Quassel IRC is developed for and tested on Linux®, Windows®, and MacOS X®. It should also run on any other platform that is supported by the Qt library. Third-party mobile clients for Android and iOS also exist.
By modern we mean that Quassel IRC will have all the features you'd expect from an IRC client nowadays. It also innovates in many areas. For example, the GUI features a dockable nicklist and topic bar, or you can arrange your channel and query buffers in default or custom views, which are also dockable. This means that you can arrange your GUI as you please. The architecture allows for other innovations, such as on-demand creation of log files in custom formats from the backlog.
Quassel is based on a client–server model. The core application uses a LAN or the Internet to connect to one or more clients, and also various IRC servers. The client does not communicate with the IRC server directly; it does so through the core.
This way, the connection to the IRC network is maintained by the core, even though no clients are using it. A monolith version of the application is also supported; which acts like a normal IRC client, with no separation between core and client. Android (Quasseldroid) and iOS (iQuassel) clients are also available.
Quassel allows simultaneous connections to multiple IRC servers. Different identities can be created, and used on one or more of the servers the core connects to. These identities each contain default nicknames, fallback nicknames, away messages and so on. Each identity can be assigned to one or more servers.
Quassel stores discussion history in either a PostgreSQL or a SQLite database. When scrolling up through the chat window, older sections of chat are loaded automatically from stored logs. In this way, one can seamlessly view logs of past discussions.
Aliases, command shortcuts, are also available with these, a user can create an alias for a long command with many parameters. The connection between the client and the core can be encrypted using Secure Sockets Layer (SSL), and proxies are supported.