Converse.js
A browser-based XMPP chat client that runs fully in the browser, as a standalone app or embedded in a website, with OMEMO encryption.
Converse.js at a glance
What is Converse.js?
Converse.js connects to any XMPP server from a web page without a server component of its own. It can appear as overlay chat boxes, a full-page app or an embedded single chat room, so it suits both a team chat front end and a support widget on a site. Messages support styling, corrections, reactions and link previews, with OMEMO end-to-end encryption, status messages, desktop notifications and HTTP file upload. Desktop versions exist as Converse Desktop and Converse Tauri. Volunteers have translated it into 41 languages.
Good fit if
- You run an XMPP server and want a web client for your users.
- You want to embed a chat room in an existing website.
Before you adopt it
Converse.js is MPL-2.0 and nothing in it is paid. One developer writes most of the code, so its pace depends on that person. You can host the static files yourself or try the hosted app at conversejs.org.
Drafted with AI from the project's README and repository data, then checked against that data on 31 October 2026. Report a correction
How to run Converse.js yourself
- Docker
- No Docker files in the repository
- Compose file
- None in the repository
- Setup effort
- Not rated: no compose file to judge from
- Kubernetes
- No Helm chart in the repository
- Desktop and mobile
- No app builds in GitHub releases
- Interface languages
- 41 languages, including German, French, Spanish, Portuguese, Dutch, Polish, Russian, Ukrainian, Turkish and Japanese
Show all 41
Afrikaans, Albanian, Arabic, Basque, Bulgarian, Catalan, Chinese, Czech, Danish, Dutch, Esperanto, Finnish, French, Galician, German, Greek, Hebrew, Hindi, Hungarian, Japanese, Korean, Lithuanian, Marathi, Mongolian, Norwegian Bokmål, Occitan, Persian, Polish, Portuguese, Romanian, Russian, Sinhala, Slovenian, Spanish, Swedish, Tamil, Thai, Turkish, Ukrainian, Uyghur, Vietnamese
Install instructions: conversejs.org or the README on GitHub.
Converse.js health: is it still maintained?
67 of 100, actively developed
Read from GitHub on 5 November 2026. How the score works
Converse.js security practices
OpenSSF Scorecard checks how a project is developed and released: reviews, protected branches, pinned dependencies, signed releases. It does not audit the code itself.
What each check found
- Binary files10 / 10No compiled binaries checked into the repository
- Dangerous workflows10 / 10No risky patterns in GitHub Actions
- License file10 / 10A license file is present
- Maintained10 / 10Steady commits and issue activity in the last 90 days
- Static analysis10 / 10Code is scanned for bugs on every change
- Pinned dependencies4 / 10Some dependencies use fixed versions
- Branch protection3 / 10Rules on the main branch are partly enforced
- Best-practices badge0 / 10No OpenSSF Best Practices badge
- Code review0 / 10Changes are merged without review
- Fuzzing0 / 10No fuzz testing found
- Security policy0 / 10No security policy
- Signed releases0 / 10Releases are not signed
- Token permissions0 / 10CI tokens have broad write rights
From the OpenSSF Scorecard of 2 November 2026. Checks that do not apply to Converse.js are left out.
Converse.js license: is it open source?
Converse.js uses MPL-2.0, an open-source license approved by the OSI.
- July 2012First published on GitHub.
- TodayMPL-2.0.
Converse.js for developers
Written in
- JavaScript 94%
- SCSS 4%
- TypeScript 1%
- HTML <1%
- Makefile <1%
- Other <1%
Getting involved
Language shares are GitHub’s count of the code in the repository.
Alternatives to Converse.js
- ejabberdRobust, Ubiquitous and Massively Scalable Messaging Platform (XMPP, MQTT, SIP Server) 80 health · GPL-2.0 · 6.7k stars
- OpenfireAn XMPP server licensed under the Open Source Apache License. 71 health · Apache-2.0 · 3.1k stars
- TinodeInstant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command… 59 health · GPL-3.0 · 13.6k stars
- ZulipZulip server and web application. Open-source team chat that helps teams stay productive and focused. 93 health · Apache-2.0 · 26.2k stars
- Rocket.ChatThe Secure CommsOS™ for mission-critical operations 82 health · MIT · 46.4k stars
Questions about Converse.js
Is Converse.js open source?
Yes. Converse.js is published under MPL-2.0, an OSI-approved open-source license.
Is Converse.js still maintained?
Its health score is 67 of 100 (actively developed). It had 276 commits in the last 90 days, the latest on 5 November 2026, and its latest release came out on 17 October 2026.
How do I run Converse.js?
The repository has no Docker files or app builds, so you build it from source. The README on GitHub has the steps.
What is Converse.js written in?
Converse.js is written mainly in JavaScript (94% of the code), by GitHub’s count of the repository.
What languages is Converse.js available in?
The repository has interface translations for 41 languages, including German, French, Spanish, Portuguese, Dutch, Polish, Russian and Ukrainian.
What are the alternatives to Converse.js?
Close alternatives in the Team chat category include ejabberd, Openfire, Tinode.