# Converse.js

A free and open-source XMPP chat client in your browser

Learn More

## Converse.js is written in Javascript and runs in your browser.

You can start using it here immediately, or you can integrate it into your own website.

You can connect to any publically accessible XMPP/Jabber server, either from a public provider, or one you have set up yourself.

### Don't have an XMPP/Jabber account?

No problem! With converse.js you can register an account on any public XMPP server that allows registration.

## Integration

- Plone
- Django (option 1)
- Django (option 2)
- Roundcube
- Wordpress
- Patternslib
- Alfresco
- Friendica

## Features

- Single-user chat
- Multi-user chatrooms (XEP 45)
- Direct invitations to chat rooms (XEP 249)
- vCard support (XEP 54)
- Service discovery (XEP 30)
- In-band registration (XEP 77)
- Contact rosters and groups
- Contact subscriptions
- Roster item exchange (XEP 144)
- Chat statuses (online, busy, away, offline)
- Custom status messages
- Typing and chat state notifications (XEP 85)
- Desktop notification messages
- Messages appear in all connected chat clients (XEP 280)
- Third person "/me" messages (XEP 245)
- XMPP Ping (XEP 199)
- Server-side archiving of messages (XEP 313)
- Client state indication (XEP 352)
- Off-the-record encryption
- Translated into 16 languages

## Screencasts

- In a Plone site
- Chatting with buddies from Jabber.org and Gmail
- Off-the-record encryption

## Contact

- Follow me on Twitter or chat with me via XMPP at jc@opkode.com.
- For technical support, please write to the mailing list: conversejs@librelist.com
  or ask in the Converse.js chat room: discuss@conference.conversejs.org.
- Also check out the mailing list archives.
- Please file bugs on Github.
- I'm available for features and consulting.

Converse.js is supported by