Real-Time Communication Infrastructure Evaluation
This is an evaluation of real-time communication infrastructure solutions, in order to potentially replace GNOME's IRC channels.
Contents
Background
Since the beginning of time, GNOME has been using IRC for real-time communication. Over the years, however, it has become increasingly outdated. The lack of persistence, multi-device support, and mobile apps make it feel antiquated, especially compared to more modern tools like Slack.
GNOME needs to improve its communication infrastructure. It needs to provide its developers with a more efficient, integrated, featureful, and enjoyable way to collaborate in real time. It also needs to provide a developer experience that does not act as a barrier to new contributors, to ensure the future of the GNOME project.
Apps like Slack or Telegram are the new standard for real-time collaboration, and are even used by some Free Software projects (despite being proprietary). Our own community is using Telegram for some things, mainly because some people (especially newer contributors) are not willing to use IRC.
Available Solutions
Available alternatives to IRC include Matrix, RocketChat, Zulip, and Mattermost. All of these options are free software, and could be hosted on GNOME infrastructure.
Feature Matrix
Chat platform Feature Matrix
This page provides a feature comparison between different chat platforms. It is important to recognize that comparison on features alone is not a good evaluation of each technology - this is only one aspect to take into account.
Feature |
Matrix |
Rocketchat |
Zulip |
Mattermost |
Notes |
Persistence |
|
|
|
|
|
Inline Media |
|
|
|
|
|
Send Files |
|
|
|
|
|
Read Receipts |
|
|
|
|
|
Feature |
Matrix |
Rocketchat |
Zulip |
Mattermost |
Notes |
Web client |
Riot Web |
|
|
|
|
Native desktop client |
Fractal, others |
|
|
|
|
Native Android/iOS client |
Riot |
|
|
|
|
Command line client |
gomuks |
|
|
|
|
Feature |
Matrix |
Rocketchat |
Zulip |
Mattermost |
Notes |
Open Standard |
|
|
|
|
|
Federated |
|
|
|
|
|