Swiften and Stroke are the obvious choices when looking for an XMPP library. Our deep knowledge of XMPP standards and extensive experience means that you don't have to spend time reading the specs and determining correct behaviour, we've been doing that for over a decade and the two founders of the Swift project even wrote the book on it. Swiften and Stroke are used and trusted by a wide range of developers, both commercial and open-source, for a surprising variety of different applications on desktop and mobile devices.
Swiften is a robust, high-quality, standards-compliant, cross-platform, and performant C++ library for implementing XMPP applications. Swiften is used as the back-end library for the Swift IM client and other open source and commercial projects. The current version of Swiften is available via the Downloads page.
Stroke is a native Java (no JNI) port of the Swiften C++ library for implementing XMPP applications.
The current version of Stroke is available via the Downloads page.
By default Swiften and Stroke are licensed under the GNU General Public License. Commercial licenses and commercial support contracts are available from Isode, a UK-based software house specialising in messaging and directory server software.