Code libraries and tools are available for many different programming languages, thus enabling developers to build a wide variety of XMPP-enabled applications.

Note: The following software was not developed by the XMPP Standards Foundation and has not been formally tested for standards compliance, usability, reliability, or performance.

See something missing? Any list of XMPP servers, clients or libraries will, due to the dynamic and evolving nature of the XMPP market, be out of date almost as soon as it’s published. If you are related to the project and spot mistakes, errors or omissions in the table below, please submit a pull request!

Artalk.XMPP

Programming language:

  • .NET 5
  • .NET Core
  • .NET Standard
  • .NET C#

Erlang/Elixir XMPP

Programming language:

  • Elixir
  • Erlang

Halcyon

XMPP Client Library

Programming language:

  • Kotlin

Platforms:

  • JVM
  • Android
  • iOS
  • JS

IM Observatory

Platforms:

  • Browser

JaXMPP

Java XMPP Client Library

Programming language:

  • Java

Platforms:

  • JVM
  • Android
  • GWT/JS

Martin

XMPP client library

Programming language:

  • Swift

Platforms:

  • macOS

MatriX

Programming language:

  • .NET
  • C#
  • Mono

MatriX vNext

Programming language:

  • .NET Core
  • .NET Standard
  • C#

Mellium

Go XMPP library

Programming language:

  • Go

QXmpp

Cross-platform C++ / Qt XMPP client and server library

Programming language:

  • C++

Platforms:

  • Android
  • iOS
  • Linux
  • macOS
  • tvOS
  • watchOS
  • Windows

Scansion

Platforms:

  • Linux

Smack

Programming language:

  • Java

Platforms:

  • Java (Java SE and Android)

Stroke

Programming language:

  • Java

Strophe.js

Programming language:

  • JavaScript

Swiften

Programming language:

  • C++

Tigase Swift XMPP client library

Programming language:

  • Swift

Tinder

Programming language:

  • Java

XMPP account exporter

Platforms:

  • Browser

libstrophe

Programming language:

  • C

observe.jabber.network

Platforms:

  • Browser

python-nbxmpp

Python XMPP Library

Programming language:

  • Python

Platforms:

  • Linux
  • Windows

search.jabber.network

Platforms:

  • Browser

slixmpp

Elegant Python library for XMPP

Programming language:

  • Python

Platforms:

  • Linux
  • macOS
  • FreeBSD
  • OpenBSD
  • NetBSD

xmpp-parsers

Collection of parsers and serialisers for XMPP extensions

Programming language:

  • Rust

xmpp.js

Programming language:

  • JavaScript
  • Node.js
  • React Native

Platforms:

  • Web

Other Libraries

Libraries without a DOAP file (Description of a Project) are listed here.

Project Name Platforms
aioxmpp Python
AnyEvent::XMPP Perl
Apache Vysper Java
as3xmpp ActionScript / Flash
AXMPP Ada
Babbler Java
Blather Ruby
cl-xmpp Lisp
dojox.xmpp JavaScript
dxmpp C++
Echomine Feridian Java
Eiffel Eiffel
emite Java
Escalus Erlang
exmpp Erlang
Fluux XMPP Go
frabjous JavaScript
gloox C++
headstock Python
hsxmpp Haskell
hxmpp haXe
iksemel C
IP*Works Internet Toolkit ActiveX, C++, C#,
Iris C++
Jabber Stream Objects (JSO) Java
jabber.net .net / C# / Mono
jabber.py Python
JabberLib Tcl
JAXL PHP
jQuery-XMPP-plugin JavaScript
Jreen C++ / Qt
JSJaC JavaScript
libpurple C / C++
Lightr PHP
Loudmouth C
net::XMPP Perl
oajabber C++
ObjXMPP Objective-C
Pontarius XMPP Haskell
pyxmpp Python
pyxmpp2 Python
seesmic-as3-xmpp ActionScript / Flash
Sharp.Xmpp .net / C# / Mono
Skates Ruby
SleekXMPP Python
StanzaJS JavaScript
stravaganza Go
StropheCappuccino Objective-J
Twisted Words Python
txmmp Linux
txmpp C++
Ubeity C#
Verse Lua
Waher Networking .NET Core / .NET Standard / C#
XMPP-FTW JavaScript
xmpp-psn Python
xmpp4js JavaScript
XMPP4R Ruby
xmpp4r-simple Ruby
xmppframework Objective C
xmpphp PHP
xmpppy Python
Z-XMPP JavaScript