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.

3.3k stars, 834 forks JavaScript On GitHub since July 2012

Converse.js at a glance

Open sourceYes, MPL-2.0No paid parts in the repository
Health67 of 100Actively developed
Self-hostingFrom sourceSteps in the README
Interface41 languagesIncluding German, French and Spanish
Issue repliesWithin ~4 daysMedian first reply; 50% of recent issues answered

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.

Look elsewhere if

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

Release rhythmEvery ~3 months4 releases in 12 months; latest v14.0.1
Issue repliesWithin ~4 daysMedian first reply; 50% of recent issues answered
Bus factorHigh riskThe most active of 3 authors wrote 98% of recent commits
  • Activity
    276 commits in the last 90 days, the latest on 5 November 2026.
    30 / 30
  • Contributors
    3 people wrote the latest 100 commits; the most active wrote 98% of them.
    5 / 20
  • Releases
    4 releases in the last 12 months; the latest, v14.0.1, on 17 October 2026.
    16 / 20
  • Replies to issues
    Maintainers answered 50% of recent issues, with a median first reply after 4 days.
    11 / 20
  • Security practices
    OpenSSF Scorecard 4.6 of 10.
    5 / 10

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.

OpenSSF Scorecard4.6 of 10How the project is built and released
Security policyNoNo SECURITY.md or similar
Signed releasesNoDownloads cannot be checked against a signature

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.

  1. July 2012First published on GitHub.
  2. TodayMPL-2.0.

Converse.js for developers

Written in

  • JavaScript 94%
  • SCSS 4%
  • TypeScript 1%
  • HTML <1%
  • Makefile <1%
  • Other <1%

Getting involved

Contributing guideYesCONTRIBUTING.mdOpen issues202On GitHub
Authors, 90 days3Of the latest 100 commits
Donations2 waysPatreon, Liberapay

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

All 16 projects in Team chat

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.