So I set up a XMPP server in my homelab this weekend to see how the ecosystem has evolved since the last time I used it. Only took me a few hours.

It seems like it has pretty much everything we'd expect from IM these days? E2EE with forward secrecy, group chats, message archives, reactions, file uploads, audio messages, voice and video calling, location sharing, etc. etc. It's even federated!

Why are we sleeping on this tech? Is there some unmitigated downside I haven't discovered yet?

#xmpp

@smn

> Why are we sleeping on this tech? Is there some unmitigated downside I haven't discovered yet?

No. The other tech has better advertising .. and that's all there is to it.

Happy to have you back on #XMPP !

@gnemmi @smn ive always liked xmpp. only barrier ive seen is getting nontechnical connections to onboard.

@jae I'll give it to you that onboarding could be kind of an issue, but #XMPP has come a really long way in that regards. From the server side of things (with mod_invites) just as from the client side with easy onboarding straight from the app without having to create an account from a web page or anything like that.

Onboarding from a recent (mid 2025) client is as easy as installing the app, open it, choose create account, pick one from the drop down list of server, provide a password. Done.

@gnemmi the group of clients i maintain took pulling teeth to get them to move to #deltachat which i contribute to and run #chatmail relays on (also stefano has one on bsd.cafe!). a couple of them know about xmpp but noted they had a hard time figuring out basic account setup. i'm reasonably technical so for me, it's not an issue but i think sometimes people get intimidated by something they aren't familiar with vs the platforms that have marketing that signals ease of onboarding. to your point, if xmpp had a marketing department funded, it'd be over :-)

@jae @gnemmi

Yes, Delta is mainly made by a German company, so they have more or less the complete project in their hands. All clients are based on exactly the same library. That gives a nice "out-of-the-box" experience.

#Jabber/#XMPP is a huge and diverse ecosystem with sometimes conflicting interests or priorities. And it's an open standard with many implementations, which can result in incompatibilites.

I prefer the latter, because I see more advantages in that approach, but YMMV.

@debacle @gnemmi

> Yes, Delta is mainly made by a German company, so they have more or less the complete project in their hands. All clients are based on exactly the same library. That gives a nice "out-of-the-box" experience.

yip, i work on the project the gerrman's have built the ecosystem to use the common core. it's fairly robust and has allowed me to write a tui for #deltachat

i've also created an xmpp <---> deltachat bridge in go that's almost ready to release (working on the omemo part still).

> #Jabber/#XMPP is a huge and diverse ecosystem with sometimes conflicting interests or priorities. And it's an open standard with many implementations, which can result in incompatibilites.

true, but the fact that we have this battle-tested protocol and you can build on is really nice.

@jae @debacle @gnemmi

Nice! I was thinking I'd do a deltachat/XMPP bridge one of these days, but one less thing to do for me. My little finger told me @daniel might maybe possibly maybe be maybe interested in doing proper e2ee with a deltachat bridge (proper e2ee=dedicated client support needed).

What did you make your bridge with? (Language? Lib?)

@nicoco @debacle @gnemmi @daniel the bridge is in go, it works bidirectional and for each contact or muc it will create a new deltachat group for the user and his actor (bridge account for xmpp). its designed for single users vs everyone sharing the same bridge endpoint.

its been a while since i got deep into xmpp spec but its been fun so far. missing piece is omemo on the xmpp actor account which is proving tough.