Converse.js vs Dendrite
A side-by-side comparison of two self-hosted matrix & xmpp options — licensing, setup difficulty, resource needs, and what each one replaces.
| Feature | Converse.js | Dendrite |
|---|---|---|
| Deploy effort | Under-an-hour setup | Under-an-hour setup |
| Health score | 88 · Excellent | 15 · At risk |
| Status | Actively maintained | Archived |
| Category | Matrix & XMPP | Matrix & XMPP |
| License | MPL-2.0 | Apache-2.0 |
| Language | JavaScript | Go |
| Setup difficulty | Easy | Medium |
| Min. RAM | 64 MB | 512 MB |
| Deployment | docker, bare-metal, source | docker, binary, source |
| GitHub stars | ★ 3,294 | ★ 5,625 |
| First released | 2013 | 2017 |
| Replaces | Slack | Slack, Discord |
What are Converse.js and Dendrite?
Converse.js
Converse.js is a free and open-source XMPP chat client that runs in the browser. It can be embedded into websites or hosted as a standalone full-page chat application.
- Embeddable XMPP web client
- OMEMO encryption support
- Plugin architecture
- Works with any XMPP server
Dendrite
Dendrite is a lightweight, efficient Matrix homeserver written in Go by the Matrix.org team. It is designed to be a more resource-efficient alternative to Synapse while remaining fully compatible with the Matrix protocol.
- Lower memory footprint than Synapse
- Federated Matrix protocol
- End-to-end encryption support
- Polylith and monolith deployment modes
Converse.js vs Dendrite: key differences
The biggest difference is maintenance: Dendrite's repository is archived and no longer developed, while Converse.js is actively maintained. Converse.js is written in JavaScript, while Dendrite is built with Go. Licensing differs — MPL-2.0 for Converse.js versus Apache-2.0 for Dendrite. Converse.js is the lighter option, starting around 64 MB of RAM against 512 MB for Dendrite. Converse.js is the more established project (first released 2013), while Dendrite arrived in 2017.
Why pick each one
Choose Converse.js if…
- Released under the MPL-2.0 license
- Easy to set up — beginner-friendly
- First-class Docker support for quick deployment
- Active community (3.3k GitHub stars)
Watch out for
- Requires an XMPP server
- No voice or video
Choose Dendrite if…
- Much lighter than Synapse
- Active development by Matrix.org
Watch out for
- Some Synapse features still missing
- Less battle-tested at large scale
Frequently asked questions
Is Converse.js or Dendrite better?
Neither is universally better. Dendrite has the larger community, while Converse.js is simpler to set up (easy difficulty). Choose based on the comparison table above and your own setup.
Are Converse.js and Dendrite free and open-source?
Yes. Converse.js is licensed under MPL-2.0 and Dendrite under Apache-2.0. Both can be self-hosted at no software cost.
Can I run Converse.js and Dendrite with Docker?
Converse.js: yes. Dendrite: yes.
Which is lighter on resources, Converse.js or Dendrite?
Converse.js has the smaller minimum footprint at 64 MB of RAM, compared to about 512 MB for Dendrite. Real-world usage depends on library size, user count, and enabled features.