The one with the problem

Unsurprisingly, in our golden age of enshittification, Discord keeps getting worse, in all manner of ways, all of which will be depressingly familiar territory to anyone used to modern software development practices. Discord is by no means the first, or last, firm to enshittify, but they are the firm at issue today.

In short: I'd like an alternative. I have some requirements, and some wishes/nice-to-haves:

Reqs

  • Self-hostable - I containerise what I can.
  • Text chat functionality: DMs, channels/topics/threads
  • Voice chat functionality: p2p/direct, channels/rooms

Wishes

  • Image/file sharing (inline previews would also be nice)
  • Ideally I end up making my TeamSpeak server redundant
  • Encryption
  • Probably a few more bits and bobs

With the above in mind, I'm shortlisting some stuff for deeper dives. 

Note: Article will be updated as candidates are added to, or removed from, the shortlist.

 

Nextcloud Talk

Under consideration at all only because I already have a Nextcloud server. I don't yet know if it can be used as a standalone application, which I think might make it (more) viable, at least to cover voice. Mum's the word on all else, as yet - it'll need a proper looking into.


Zulip

No voice - meaning TeamSpeak stays.

Element

Federation, woo \o/ It'll stay shortlisted since I have a Synapse instance running already, but Electron remains a framework-of-last-resort around here, so it's going to need to be quite a bit better than alternatives to actually be considered. I'm also not planning to keep the Synapse server running, so it might not make much sense for my intended use case.

Chatto

Seems straight-forward enough. Lacks RTC, though, so TS stays, if I go with Chatto.

ProsodyIM

Jabber/XMPP - not off to a great start (anecdotally - never was a fan of xml).

Rocket chat

Supposedly aiming to be a Discord replacement. Good start, at least.

Stoat (ex-Revolt chat)

Also aims to be a drop-in replacement for Discord. Definitely taking a closer look.

Spacebar 

A reverse-engineering of Discord itself, aiming for client compatibility. Needs a closer look. If development isn't terribly slow it does look very interesting.