Skip to content

conversejs/converse.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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: [email protected]).

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 [email protected]: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.

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

Overlay Mode

Screenshot of Converse in overlay mode

Fullpage Mode

Screenshot of Converse in fullpage mode

Dark Mode

Screenshot of Converse with a dark theme

Embedded Mode

Screenshot of Converse in embedded mode

XMPP Protocol Support

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

View all supported XEPs (45+)
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

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