Converse

用 JavaScript 编写的基于 Web 的 XMPP/Jabber 聊天客户端。「Web-based XMPP/Jabber chat client written in JavaScript」

Github stars Tracking Chart

Converse

XMPP Chat
Travis
Bountysource bounties
Translation status

Converse is a web based XMPP/Jabber chat client.

You can either use it as a webchat app, or you can integrate it into your own website.

It's 100% client-side JavaScript, HTML and CSS and the only backend required
is a modern XMPP server.

Please support this project via Patreon or Liberapay

Demo

Converse is hosted and can be used at https://conversejs.org.

A demo showing anonymous login is available at https://conversejs.org/demo/anonymous.html
and a demo which shows how you can embed a single chat room into a page is
avialable at https://conversejs.org/demo/embedded.html.

Documentation

The developer/integrator documentation can be found at https://conversejs.org/docs/html.

You'll probably want to begin with the quickstart guide,
which shows you how to use the CDN (content delivery network) to quickly get a demo up and running.

Converse modes

Overlay

In overlay mode, Converse appears overlayed chats on top of the website.

Screenshot of Converse in overlay mode

Fullpage

In fullpage mode, Converse behaves like a single-page app that covers the whole browser viewport.

Screenshot of Converse in fullpage mode

Embedded

In embedded mode, Converse can be embedded into an element in the DOM.

Screenshot of Converse in embedded mode

Features

  • Available as overlayed chat boxes or as a fullscreen application. See inverse.chat for the fullscreen version.
  • Custom status messages
  • Desktop notifications
  • A plugin architecture based on pluggable.js
  • Multi-user chat rooms XEP 45
  • Chatroom bookmarks XEP 48
  • Direct invitations to chat rooms XEP 249
  • vCard support XEP 54
  • Service discovery XEP 30
  • In-band registration XEP 77
  • Roster item exchange XEP 144
  • Chat statuses (online, busy, away, offline)
  • Typing and state notifications XEP 85
  • File sharing / HTTP File Upload XEP 363
  • Messages appear in all connnected chat clients / Message Carbons XEP 280
  • Third person "/me" messages XEP 245
  • XMPP Ping XEP 199
  • Server-side archiving of messages XEP 313
  • Hidden Messages (aka Spoilers) XEP 382
  • Client state indication XEP 352
  • Last Message Correction XEP 308
  • OMEMO encrypted messaging XEP 384
  • Anonymous logins, see the anonymous login demo
  • Message Retractions XEP-424
  • Message Moderation XEP-425
  • Translated into over 30 languages

Integration into other servers and frameworks

Tests

We use behavior-driven tests written with jasmine.js.

Open tests.html in your browser, and the tests will run automatically.

Licence

Converse.js is released under the Mozilla Public License (MPL).

Attribution

Emoji images are courtesy of Twemoji.

Support

Issues can be logged on the Github issue tracker.

Donations

A heartfelt thanks for everyone who has supported this project over the years.
Many people have contributed testing, bugfixes, features and corrections.

We accept donations via Patreon and Liberapay.

Overview

Name With Ownerconversejs/converse.js
Primary LanguageJavaScript
Program languageJavaScript (Language Count: 5)
PlatformLinux, Mac, Web browsers, Windows
License:Mozilla Public License 2.0
Release Count107
Last Release Namev10.1.7 (Posted on 2024-03-15 08:21:50)
First Release Nameweblate-0.1 (Posted on 2012-03-06 16:22:38)
Created At2012-07-21 09:14:22
Pushed At2024-03-22 20:16:56
Last Commit At2024-03-19 06:22:11
Stargazers Count3k
Watchers Count142
Fork Count759
Commits Count8.7k
Has Issues Enabled
Issues Count1836
Issue Open Count297
Pull Requests Count557
Pull Requests Open Count27
Pull Requests Close Count931
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top