I’m going to pin this thread because it seems pretty important.

Thoughts so far:

Mattermost

Lacks ability to mute/ignore an individual user. I think this is a must for public services like this. Even IRC has this (but Slack doesn’t either).

Threads don’t collapse. It almost feels like it adds more clutter to have it this way than if they didn’t exist at all.

Pretty similar to Slack from a UI standpoint

Riot

No custom reactions? I know that’s super unimportant.

Still a bit rough around the edges.

Creates a private channel as soon as you choose to open a conversation with somebody. Not a huge fan of that but it could very well be a non-problem for 99% of other people.

Same type threads as Mattermost.

Matrix developers are already engaged with us.

Seems pretty granular with permissions and such

I feel like this will give people the most flexibility with clients. I haven’t looked too far into clients for the other two, but Matrix does have a number of other clients available if Riot isn’t some people want to use.

Rocket.Chat

No native dark mode yet

Differentiation between threads and discussions. It seems like an interesting concept, but I’m not sure what the intended use-cases for each are. I’ll have to play around with each later.

I’ll update this post a few times as I use each of them more.