랭킹으로 돌아가기

xmppjs/xmpp.js

JavaScript

XMPP for JavaScript

xmppjavascriptclientcomponentnodejsbrowserreact-nativenodechatreal-time
스타 성장
스타
2.3k
포크
382
주간 성장
이슈
33
1k2k
2023년 1월2024년 3월2025년 5월2026년 7월
아티팩트npmnpm install xmpp.js
README

xmpp.js

XMPP is the Extensible Messaging and Presence Protocol, a set of open technologies for instant messaging, presence, multi-party chat, voice and video calls, collaboration, lightweight middleware, content syndication, and generalized routing of XML data.

xmpp.org/about-xmpp/technology-overview/

xmpp.js is a JavaScript library for XMPP.

Get started

goals

universal

Runs everywhere JavaScript runs and makes use of the best network transport available.

xmpp.js is known to be used with browsers, Node.js, WebWorker, React Native, Bun, Deno, GJS and Duktape.

reliable

By default, it handles errors and will automatically reconnect. With appropriate configuration it will even loop through a list of endpoints. You don't have to write a single line of code to handle network failures.

Releases follow the Semantic Versioning specification

modular

Each feature is implemented as a module that can be added or removed easily. Including core XMPP features.

small

We avoid third party dependencies.

For the web, we make the sure the default client doesn't exceed 13 kb (gzipped), for reference, that's less than half the size of React.

Getting help

Do you need help with working with xmpp.js? Please reach out to our community by posting in the Discussions section of this project.

Built with xmpp.js

Feel free to send a PR to add your project or organization to this list.

Protocols

RFC 6120 - Extensible Messaging and Presence Protocol (XMPP): Core

See @xmpp/client-core and @xmpp/component-core

Included in @xmpp/client and @xmpp/component


RFC 7590 - Use of Transport Layer Security (TLS) in the Extensible Messaging and Presence Protocol (XMPP)

See @xmpp/tls

Included in @xmpp/client


RFC 7622 - Extensible Messaging and Presence Protocol (XMPP): Address Format

See @xmpp/jid

Included in @xmpp/client and @xmpp/component


RFC 7395 - An Extensible Messaging and Presence Protocol (XMPP) Subprotocol for WebSocket

See @xmpp/websocket

Included in @xmpp/client


draft-cridland-xmpp-session-01 Here Lies Extensible Messaging and Presence Protocol (XMPP) Session Establishment

See @xmpp/session-establishment


XEP-0368: SRV records for XMPP over TLS

See @xmpp/resolve

Included in @xmpp/client


XEP-0156: Discovering Alternative XMPP Connection Methods

See @xmpp/resolve

Included in @xmpp/client


XEP-0114: Jabber Component Protocol

See @xmpp/component-core

Included in @xmpp/component


XEP-0082: XMPP Date and Time Profiles

See @xmpp/time


XEP-0198: Stream Management

See @xmpp/stream-management

Included in @xmpp/client


XEP-0388: Extensible SASL Profile

See @xmpp/sasl2

Included in @xmpp/client


XEP-0386: Bind 2

See @xmpp/client-core

Included in @xmpp/client


XEP-0484: Fast Authentication Streamlining Tokens

See @xmpp/client-core

Included in @xmpp/client

credits

xmpp.js is a rewrite of node-xmpp and learned a lot from it.

Thanks to all xmpp.js and node-xmpp contributors.

관련 저장소
tinode/chat

Instant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command line; chatbots

GoGo ModulesGNU General Public License v3.0chatchat-application
13.4k2.1k
42wim/matterbridge

bridge between mattermost, IRC, gitter, xmpp, slack, discord, telegram, rocketchat, twitch, ssh-chat, zulip, whatsapp, keybase, matrix, microsoft teams, nextcloud, mumble, vk and more with REST API (mattermost not required!)

GoGo ModulesApache License 2.0mattermostxmpp
7.5k725
processone/ejabberd

Robust, Ubiquitous and Massively Scalable Messaging Platform (XMPP, MQTT, SIP Server)

ErlangOthererlangxmpp
process-one.net/ejabberd/
6.7k1.5k
twisted/twisted

Event-driven networking engine written in Python.

PythonPyPIOtherpythontwisted
twisted.org
6k1.2k
jitsi/jitsi

Jitsi is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, IRC and many other useful features.

JavaMavenApache License 2.0jitsiicq
desktop.jitsi.org
4.3k979
conversejs/converse.js

Web-based XMPP/Jabber chat written in JavaScript

JavaScriptnpmMozilla Public License 2.0xmppxmpp-client
conversejs.org
3.3k832
ChatSecure/ChatSecure-iOS

ChatSecure is a free and open source encrypted chat client for iOS that supports OTR and OMEMO encryption over XMPP.

Objective-COtheromemoxmpp
chatsecure.org
3.2k1k
igniterealtime/Openfire

An XMPP server licensed under the Open Source Apache License.

JavaMavenApache License 2.0openfirexmpp
igniterealtime.org/projects/openfire/
3k1.4k
processone/tsung

Tsung is a high-performance benchmark framework for various protocols including HTTP, XMPP, LDAP, etc.

ErlangGNU General Public License v2.0erlangxmpp
process-one.net/en/tsung/
2.6k402
dino/dino

Modern XMPP ("Jabber") Chat Client using GTK/Vala

ValaGNU General Public License v3.0xmpp-clientvala
dino.im
2.5k273
igniterealtime/Smack

A modular and portable open source XMPP client library written in Java for Android and Java (SE) VMs

JavaMavenApache License 2.0xmppxmpp-client-library
igniterealtime.org/projects/smack/
2.4k879
movim/movim

Movim - Decentralized social platform

PHPPackagistGNU Affero General Public License v3.0movimphp
movim.eu
2k279