jcbrand/converse.js

Browser based XMPP instant messaging client

Maintainers

👁 jcbrand

Package info

github.com/conversejs/converse.js

Homepage

Language:JavaScript

pkg:composer/jcbrand/converse.js

Fund package maintenance!

Patreon

Liberapay

Statistics

Installs: 156 723

Dependents: 0

Suggesters: 0

Stars: 3 263

Open Issues: 220

v13.0.1 2026-05-27 18:42 UTC

Requires

None

Requires (Dev)

None

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MPL-2.0 7457bb86d5387207e7bb4651eb9f2643b81257ef

messagingchatxmpppresence

This package is auto-updated.

Last update: 2026-06-18 09:22:39 UTC


README

👁 Converse.js

👁 XMPP Chat
👁 CI Tests
👁 Translation status

Converse is a modern, feature-rich and 100% client-side XMPP chat app that runs in a web browser. It can be used as a standalone web app or seamlessly integrated into existing websites.

Join our chat room (XMPP URL: discuss@conference.conversejs.org).

Quick Start

Try the hosted app at conversejs.org. You can also download and install Converse Desktop or Converse Tauri.

Or set up your own instance:

git clone git@github.com:conversejs/converse.js.git
cd converse.js
git clone https://github.com/conversejs/media.git media; // To see images like sponsorship logos
npm install
npm run build
npm run serve -- -p 8008

You can then open http://localhost:8008/dev.html in your browser to access Converse.

See our quickstart guide for more details.

Screenshots

Live Demos

Documentation

Comprehensive documentation is available at conversejs.org/docs, including:

Key Features

  • Multiple UI Options: Overlay chat boxes, full-page application, or embedded components
  • Rich Messaging: Message styling, corrections, reactions, and URL previews
  • Privacy-Focused: End-to-end encryption with OMEMO
  • User Status: Custom status messages and availability indicators
  • Notifications: Desktop notifications for new messages
  • File Sharing: HTTP File Upload support
  • Extensible: Plugin architecture based on pluggable.js
  • Internationalized: Translated into 40+ languages
  • Anonymous Login: Use without registration (server permitting)
  • Responsive: Works on desktop and mobile devices

Display Modes

Converse adapts to your needs with multiple display options:

Mode Description
Fullpage (default) Functions as a single-page application covering the entire viewport
Overlay Chat boxes appear on top of your website
Embedded Integrates into specific elements in your page's DOM

XMPP Protocol Support

Converse implements a wide range of XMPP Extensions (XEPs), making it one of the most protocol-compliant web clients available.

Integration Options

Converse integrates with popular platforms and frameworks:

XMPP Servers

Server Plugin
Openfire inverse
Prosody mod_conversejs
ejabberd mod_conversejs

Web Frameworks & CMS

Platform Integration
Elgg plugin
Peertube peertube-plugin-livechat
Pàdé Pàdé
Roundcube roundcube-converse.js-xmpp-plugin
Tiki Wiki CMS Groupware built-in optional feature
Ubuntu-Touch ConverseJS for Ubuntu-Touch
WordPress ConverseJS Plugin

Support the Project

If you find Converse useful, please consider supporting its development:

Thanks to everyone who has supported this project over the years through donations, testing, bug reports, and code contributions.

Sponsors

👁 BairesDev
👁 Blokt Crypto & Privacy
👁 LITSLINK software development
👁 KeyCDN