SkillAgentSearch skills...

Converse.js

Web-based XMPP/Jabber chat written in JavaScript

Install / Use

/learn @conversejs/Converse.js
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<h2 align="center"> <a href="https://conversejs.org" target="_blank" rel="noopener"> <img alt="Converse.js" src="https://github.com/conversejs/converse.js/blob/master/logo/readme.png" width="480"> </a> </h2>

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
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

<details> <summary>Click to view screenshots</summary>

Overlay Mode

Screenshot of Converse in overlay mode

Fullpage Mode

Screenshot of Converse in full-page mode

Embedded Mode

Screenshot of Converse in embedded mode

</details>

Live Demos

Documentation

Comprehensive documentation is available at conversejs.org/docs/html, 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.

<details> <summary><strong>View all supported XEPs (45+)</strong></summary>

| XEP | Name | Notes | |-----|------|-------| | RFC-7395 | XMPP Subprotocol for WebSocket | | | XEP-0004 | Data Forms | | | XEP-0030 | Service Discovery | | | XEP-0045 | Multi-user Chat | | | XEP-0048 | Bookmarks | | | XEP-0050 | Ad-Hoc Commands | | | XEP-0054 | VCard-temp | | | XEP-0059 | Result Set Management | | | XEP-0060 | Publish-Subscribe | Limited support | | XEP-0066 | Out of Band Data | | | XEP-0077 | In-band Registration | | | XEP-0085 | Chat State Notifications | | | XEP-0115 | Entity Capabilities | | | XEP-0124 | BOSH | | | XEP-0144 | Roster Item Exchange | | | XEP-0156 | Discovering Alternative XMPP Connection Methods | | | XEP-0163 | Personal Eventing Protocol | Limited support | | XEP-0184 | Message Receipt | | | XEP-0198 | Stream Management | | | XEP-0199 | XMPP Ping | | | XEP-0203 | Delayed Delivery | | | XEP-0206 | XMPP Over BOSH | | | XEP-0245 | The /me Command | | | XEP-0249 | Direct MUC Invitations | | | XEP-0280 | Message Carbons | | | XEP-0297 | Stanza Forwarding | Limited support | | XEP-0308 | Last Message Correction | | | XEP-0313 | Message Archive Management | | | XEP-0316 | MUC Eventing Protocol | Limited support | | XEP-0317 | Hats | Limited support | | XEP-0333 | Chat Markers | Limited support | | XEP-0352 | Client State Indication | | | XEP-0357 | Push Notifications | | | XEP-0359 | Unique and Stable Stanza IDs | | | XEP-0363 | HTTP File Upload | | | XEP-0372 | References | | | XEP-0382 | Spoiler Messages | | | XEP-0384 | OMEMO Encryption | | | XEP-0393 | Message Styling | | | XEP-0422 | Message Fastening | Limited support | | XEP-0424 | Message Retractions | | | XEP-0425 | Message Moderation | | | XEP-0437 | Room Activity Indicators | | | XEP-0453 | DOAP Usage in XMPP | | | XEP-0454 | OMEMO Media Sharing | | | XEP-0461 | Message Replies | |

</details>

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

<div style="display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-conte
View on GitHub
GitHub Stars3.2k
CategoryDevelopment
Updated12h ago
Forks817

Languages

JavaScript

Security Score

100/100

Audited on Mar 28, 2026

No findings