No Description

JC Brand cf94a2c02f Update release notes. 5 years ago
.github c9830c91b2 Fix funding links 6 years ago
converse-logs d7a113e081 Fix transcripts code. 7 years ago
demo 266fe131a9 Release 5.0.4 5 years ago
docs 266fe131a9 Release 5.0.4 5 years ago
images 39896b508b Release 5.0.3 5 years ago
locale 266fe131a9 Release 5.0.4 5 years ago
logo 07abbfc531 Update Weblate logo 5 years ago
mockup a116a1ec8f Fix various website CSS issues. Re-add images 6 years ago
sass 05cdae999f CSS: Revert previous change and only apply if singleton 5 years ago
sounds 1d2b4c4523 Add sound file credits 11 years ago
spec 2b268c92bb Fix linting error 5 years ago
src 8780f7a128 Fix linting errors (no-unused-vars) 5 years ago
tests b70fde159d Fixes #1738. Allow webpack's `publicPath` to be specified at runtime 5 years ago
.eslintrc.json 75c11a2006 emoji-views: Specify dependency on muc-views 5 years ago
.gitignore 9a7dd99889 Ensure python 3.7 is used for sphinx and bump lerna version 6 years ago
.prettierrc 01fce55733 Add prettierx and tentatively use it for some formatting 6 years ago
.travis.yml 7b11d85503 Add support for XEP-0198 Stream Management 6 years ago
CHANGES.md 266fe131a9 Release 5.0.4 5 years ago
COPYRIGHT 266fe131a9 Release 5.0.4 5 years ago
LICENSE 9008a1d4d4 Move license to repo root 8 years ago
Makefile 266fe131a9 Release 5.0.4 5 years ago
README.md 34e573f8af Remove references to unsupported OTR encryption 6 years ago
RELEASE.md cf94a2c02f Update release notes. 5 years ago
buildout.cfg 1194467f82 Bump docutils to 0.15.2 6 years ago
composer.json b7ae9f212c Replace http: with https: in conversejs.org links 6 years ago
dev.html 0f95059c72 Add a debugging helper plugin 6 years ago
fullscreen.html 266fe131a9 Release 5.0.4 5 years ago
index.html 266fe131a9 Release 5.0.4 5 years ago
jshintrc f353fe8611 Bugfix for headline messages. 9 years ago
jslicenses.html 266fe131a9 Release 5.0.4 5 years ago
lerna.json 18024b8bd2 Store lerna packages in the `src` directory 6 years ago
mobile.html 266fe131a9 Release 5.0.4 5 years ago
package-lock.json 266fe131a9 Release 5.0.4 5 years ago
package.json 1e707f7cf2 `npm run build` should also build unminified JS 5 years ago
postcss.config.js 9ae71104c2 webpack: split css out into separate file 6 years ago
redirect.html 48adc04740 Fix path to converse.css and add some mockup fixes 6 years ago
requirements.txt fa2d6cca10 Update developer documentation and buildout dependencies 6 years ago
webpack.common.js b70fde159d Fixes #1738. Allow webpack's `publicPath` to be specified at runtime 5 years ago
webpack.dev.js 39896b508b Release 5.0.3 5 years ago
webpack.headless.js b3e13c5ea5 Add webpack config for making a headless build 5 years ago
webpack.html b70fde159d Fixes #1738. Allow webpack's `publicPath` to be specified at runtime 5 years ago
webpack.nodeps.js 41c4f9ceb2 Update nodeps webpack config to create chunks in the right place 5 years ago
webpack.prod.js 39896b508b Release 5.0.3 5 years ago
webpack.serve.js 64135b7731 Update webpack config to re-add the old `make watch` 5 years ago

README.md

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.

Converse in overlay mode

Screenshot of Converse

Converse in fullpage mode

Screenshot of Converse in fullpage mode

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.

Features

  • Available as overlayed chat boxes or as a fullscreen application. See inverse.chat for the fullscreen version.
  • A plugin architecture based on pluggable.js
  • Single-user and group chats
  • Contacts and groups
  • 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)
  • Custom status messages
  • Typing and state notifications XEP 85
  • Desktop notifications
  • 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
  • Supports anonymous logins, see the anonymous login demo.
  • Translated into 28 languages

Integration into other 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.