When Jeremie Miller invented Jabber/XMPP technologies in 1998, he did so in large measure to provide a free and open alternative to the proprietary instant messaging services of the day, such as AOL Instant Messenger and ICQ. Although the names of such services have changed, today XMPP still represents a free and open standard for building and deploying instant messaging systems and related applications.
All of the existing XMPP servers, clients, and programming libraries support the key features of an IM system, such as one-to-one and multi-party messaging, presence subscriptions and notifications, and contact lists. This wealth of code enables developers to easily build new applications in a secure and scalable way.
Because user expectations for messaging apps continue to change over time, the XMPP community always works to define and implement XMPP extensions for new features. Whereas five or ten years ago such features included chat state notifications and HTML messages, now they include things like push notifications, message archives, and improved multi-device support.
Projects that are using vanilla and open XMPP are listed on our software section.
There are also many, mostly commerical projects that have created an XMPP-based Instant Messaging network or use XMPP in their backend.
|WhatApp uses a variation of XMPP for its popular chat service
|Kik Messenger uses a variation of XMPP for its popular chat service.
|Zoom uses XMPP (with some proprietary extensions) for its chat functionality.
|Jitsi is a free and open source project that enables video-conferences. It uses XMPP for its chat functionality.
|A chat app and social communication platform mainly used in South Africa.
|Grindr is a geosocial networking and online dating application that uses XMPP for its chat application.
|Mailfence uses XMPP for its group chat functionality.
|A free and open source XMPP service that uses your phone number as the user ID.
|An app for the German Federal Police’s Android devices and a desktop app used as a communication tool by the members of the control centre.