The focus of this category is on instant messaging and chat clients, which, although they are not the same thing, are commonly identified with one another.
A chat client is a software application designed to power an online chat room, while instant messaging is usually between only two individuals, although group messaging is not unheard of. Because of the similarities between the technologies, chat, and instant messaging are often used interchangeably. Nevertheless, they are still not one and the same.
Chat technology began in the 1970s, giving people the ability to chat with groups of people at the same time. The first chat rooms were restricted to five people at a time. As the use of the Internet was costly, and rates were based on the amount of time that a person spent online, chats were infrequent.
Early ISPs included Compuserve, Mindspring, UUNet, AOL, Prodigy, Delphi, and Earthlink. Of these, AOL did the most to make use of the Internet more affordable and available to more people, and AOL chat rooms hosted millions of users, greatly popularizing the technology.
Chat takes place in a virtual room, serving as a real-time forum where multiple people can connect with one another at the same time, conversing and sharing images. Some chat rooms are private, while others are open to anyone who wants to participate.
Although they still exist, public chat rooms are not as popular as they were in the 1990s.
Today, chat is more often used by businesses that incorporate live chat on their websites. Business chat sessions replicate the call-center experience, serving as a way of engaging visitors to the site, as well as an alternative means of technical support, in lieu of email or telephone calls.
Chat differs from instant messaging in several ways, one of which is that the conversation is session-based. When the chat session is over, the user closes the application, or the connection is lost, it's all over.
Instant messaging began in the early 1960s, using a technology developed by the Massachusetts Institute of Technology. Using MIT's messaging, up to thirty users could log on and send messages to one another. However, instant messaging didn't become hugely popular until Marabilis introduced its free instant messaging service, known as ICQ, in 1996. Today, there are several instant messaging services, including ICQ, which no longer dominates the market.
Although there are many areas of overlap today, generally chat is domain-based, while instant messaging involves downloading and installing an IM application. Chat is for group messaging, while IM is for one-on-one conversation. In a chat room, messages are visible to everyone with access to the virtual room, while IM messages allow opening multiple messaging windows for individual private messages. Participants in a chat session are often anonymous, while IM users are known to one another.
Freestanding virtual chat rooms are not so common anymore, but chat clients can be embedded in websites for live chat support or other purposes.
Instant messaging clients are more often downloaded as mobile or smartphone apps today, diverging from the early generation of instant messaging platforms, like AOL Instant Messenger, Yahoo! Messenger, and Windows Live Messenger. In the United States, short message service (SMS) is popular because it is included with most telephone, Internet, and mobile device systems.
The focus of this guide is on the software used to power chat and instant messaging services, which are generally known as clients.
 
 
Recommended Resources
Adium is a free instant messaging application for Mac that can connect to Jabber (XMPP), ICQ, IRC, and others. Available under the terms of the GNU General Public License, Adium can connect the user to any number of messaging accounts on any combination of supported messaging services. Adium is a third-party client for connecting to services run by others and does not host any IM services itself. Its features, system requirements, development notes, and documentation are posted.
https://adium.im/
Akeni specializes in enterprise instant messaging, LAN Messenger, group chat, social networking, and collaboration software for business use, including products for Microsoft Windows and Linux, and some products for Apple Mac. Its products and services are set forth, including a comparison chart for a quick overview of the features available in its products. Downloads of evaluation software is supported, and pricing is based on the number of users.
http://www.akeni.com/
Offered free under the terms of the GNU General Public License, aMSN Messenger is a Windows Live Messenger clone that supports many of the features of MSN Messenger, now known as Windows Live Messenger. It is a multi-platform application, supporting several OS platforms. Its features are listed on the site, along with screenshots, documentation, help files, and development notes. Several skins and plugins are available for download, as well.
http://www.amsn-project.net/
Written in C, IPChat is a ncurses-based chat program in which users find contacts by their IP addresses or hostnames. The open-source chat client is available under the terms of the GNU General Public License and includes features such as colors, terminal window resizing, line editing, and recalling of previously written lines, as well as a persistent contact list, so that it works as an instant messenger program. Project administrators are identified, and documentation is included.
http://savannah.nongnu.org/projects/ipchat
Written in Java, Jimm is an open-source alternative instant messaging client for ICQ, although it is not endorsed or affiliated with ICQ. Licensed under the terms of the GNU General Public License, the application was originally known as Mobicq, but was renamed in 2004. Its current name means Java Instant Mobile Messenger. Its features are listed on the site, along with screenshots, a list of contributors, FAQ, and development notes. It may be downloaded from the site.
http://www.jimm.org/
Developed in the late 1990s, KVIrc is a graphical IRC client for Linux, Unix, Mac, and Windows. Its name serves as an acronym for K Visual IRC, in which the K represents its dependency on KDE. Released under a modified GNU General Public License, the IRC client can connect to several servers at the same time. The KVIrc project is introduced, along with development notes, user documentation, installation guide, screenshots, and a download page. Graphics are available.
http://www.kvirc.net/
Available under the terms of the GNU General Public License, LlamaChat is designed to be an open-source chat server/client pair for use on the web. Written in Java, LlamaChat supports advanced chat functionality, including secure connections, emoticons, administrative class users, and others. Hosted on SourceForge, the files may be downloaded from the site, and users may rate and post reviews, make bug reports, feature requests, and seek assistance.
https://sourceforge.net/projects/llamachat/
Distributed as trialware or proprietary software, mIRC is an Internet relay chat client for Windows that was created in 1995. Its features include a scripting language that is further developed with each version, which can be used to make minor changes to the program, such as custom commands, and which can also be used to alter the behavior and appearance of the application. It also includes file-sharing abilities through its DCC protocol and a built-in file server.
https://www.mirc.com/
Multi User Server Client Linkage Environment
Created and developed by Meyer Sound Laboratories, MUSCLE is an open-source, cross-platform, client-server messaging system for dynamic distributed applications that runs under any operating system compliant with POSIX. Distributed under the BSD License, it may be freely downloaded from the site, which includes a user guide, an informational video, a self-guided API tour, a list of features, development notes, documentation, and contacts.
https://public.msli.com/lcs/muscle/
Hosted on SourceForge, and also known as Nchat, NexusChat is a single-threaded telnet chat server written in C. Created in 1998, the application has the look and feel of traditional dialup chats and BBSs, such as DDial, GTalk, and Minichat. NexusChat supports ANSI/VT100 colors, named channels, customizable user classes, several system and user options, and more than fifty commands. Its features, screenshots, and client software are put forth, along with a user’s guide.
http://nchat.sourceforge.net/
Created by Krzysztof Burghardt in 2002, and maintained by the OpenChatterBox Project, the LANChat-like application is designed for communicating over Local Area Networks, using a protocol similar to the ChatterBox utility for Windows, although it doesn’t support colors, pictures, or user modes. The application uses port 7777/UDP, and public messages are plain-text, while private messages are encrypted, and its UI is Ncurses-based, so it can be used through Telnet/SSH.
http://openchatterbox.sourceforge.net/
Originally known as GAIM, Pidgin is a multi-platform instant messaging client that supports several messaging protocols, allowing users to simultaneously log into various services from a single application, with a single interface for both popular and obsolete protocols. Although its development was assisted by AOL’s technical staff, AOL later protested its use of GAIM as an infringement of its AOL Instant Messenger (AIM) client, so GAIM became Pidgin and is licensed under GPLv2+.
https://www.pidgin.im/
Open-source and compatible with Linux, macOS, and Windows, Psi is a free messaging application designed for the XMPP network, offering full Unicode support and localizations, file transfers, customizable icon sets, and other features, in a free, open instant messaging application. Development notes, release announcements, and a list of features are put forth, and the application and source code may be downloaded from the site.
https://psi-im.org/
Developed through Mojave Linux, ShoutChat is a PHP script available under the terms of the GNU Lesser General Public License and designed to give developers the capability of adding an instant messaging module to their websites. Using an early version of AJAX, ShoutChat can be operated in most modern browsers. An overview of the project is given, along with development and version notes, a tutorial, a demo, and a download link. Related links are included.
http://mojavelinux.com/projects/shoutchat/
The multi-platform instant messaging platform is proprietary, offering a limited free version and two commercial versions, by annual or monthly subscription, with pricing based on the number of active users. The features of each are compared side-by-side, along with a description of the program and the ways in which it can be used by businesses. A Slack Certified program is available for Slack administrators or developers, and webinars, documentation, and other support services are available.
https://slack.com/
Produced by the Twisted Matrix Community, Twisted Words provides two separate high-level end-user features, a multi-protocol instant messaging server and a multi-protocol instant messaging client, the latter of which is usable as an IRC client, or as an AIM client. Twisted Words also includes low-level implementations of OSCAR (AIM and ICQ), IRC, MSN, and TOC (AIM), Jabber libraries, and prototypes of the chat server and client frameworks built on top of the protocols.
https://twistedmatrix.com/trac/wiki/TwistedWords
Hosted on Google Archive, Vayala is a multipurpose chat client for developers that offers a platform and an easy-to-use Eclipse plugin. Based on multicast technology, each client is automatically connected to one network of chat client without a central server or a difficult installation procedure. Upon adding the Eclipse view, the user is connected to their colleagues. Besides chat functions, users may also exchange files and graphics. It is licensed under GNU GPLv2.
https://code.google.com/archive/p/vayala/
Also known as Voc, the application is a stream-chat engine designed to work on high-loaded chat servers. Written in PHP, it uses Perl or C++ for its Voc-daemon, which is the part of the program that handles multiple-user connections. Using Voc, a chat can be established to serve hundreds of visitors at the same time and, as it is HTML-based, it can be accessed through any common browser. Several languages are available, and it can be installed on Windows or Unix systems.
http://www.vochat.com/
Operating in Linux and Windows, XChat is an IRC program that allows users to join multiple IRC channels (chat rooms) at the same time for public or private one-on-one conversations. File transfers are also supported. The main body of its code is distributed under the GNU General Public License, but the official build for its Windows version became proprietary in 2004, requiring purchase after a thirty-day trial period, and previous Windows versions were removed from the site.
http://xchat.org/