Slack Alternatives

From P2P Foundation
Jump to navigation Jump to search

= alternatives to the proprietary Slack software

Directory created by Danyl Strype of Disintermedia, now maintained here. Original at https://web.archive.org/web/20181208131734/https://www.coactivate.org/projects/disintermedia/slacking-off/

Introduction

When commons stewardship organisations like CreativeCommons started to use Slack in place of IRC, along with open source projects like Mozilla, this was justified on the basis that people didn't have to use the proprietary (and some say awful) Slack client. Instead, they could use their choice of app by using Slack's IRC or XMPP bridges, which allowed Slack to enclose organisations that would otherwise never have gone there. Now that those bridges have been removed, they're locked in, because Slack has their chat history, a classic bait-and-switch tactic. This page is about liberating software your team could use in place of Slack. Apps within each section are listed in alphabetical order.

A few questions to help you decide what to replace Slack with:

  • do you use Slack mainly to communicate with a team, or as more of a chat-based social network?
  • are you in a position to self-host a team chat package, or are you only interested in using hosted services?
  • do you use Slack mainly for realtime chat, or asynchronous messages, or equally for both?
  • is voice and video mission critical, or do you only need text chat?
  • how important is your chat history? Is it an essential archive of your institutional memory, like mailing list archives? Is it ephemeral, like idling in IRC, with your team usually summarizing Slack chat in docs on a wiki or whatever?
  • do you want it to allow federation between different servers, or are you happy having all participants set up an account on one server (yours or a third-party host) with backups?
  • is email integration of interest, or are you all drowning in email and not wanting email delivery/ replies as a option? (I'm guessing it's not that important since Slack has no email bridge, but...)

Potential replacements

This page aims to offer a wide range of possible replacements for Slack, all of which publish their source code under a liberating license that respects their users' software freedom. Some of the projects listed may be experimental, which will be mentioned where known, others may have been abandoned since the page was last updated. Updates and feedback on testing experiences is welcome, and will be used to improve the usefulness of the listings on this page.

Chat-like Slack replacements

Key criteria for being included here as a possible Slack replacement is supporting realtime text chat, and having at least one way of using it in on the web, so its usable by anyone with a web browser. But like Slack itself, many of these projects can also be used via desktop and mobile apps. Also, some of these projects may integrate with voice/ video chat systems (See Free Code Chat Apps for a table of chat apps, their features, and how they work).

Standalone

If what you're look for is a private chat space for your team, or your organization, rather than a chat-based social network, one of these is probably your best option:

  • Rocket.Chat ("MIT"): Demo available at open.rocket.chat. Messages can be edited after sending. Threaded like mailing lists. Supports voice messages within chats.
  • Zulip (Apache 2.0): Demo available at chat.zulip.org. Gratis hosting for free code and open source projects. Threaded like mailing lists. Has apps for desktop and mobile and can be used in third-party apps like Ferdi. Downsides: uses Electron for desktop apps (see entry on Wire).

Social

If a chat-based social network is what you're looking for, where you can easily connect with other people involved in free code development and other commons projects, one of these could be for you:

  • fediverse: not an app or a service, but rather a federation of services (or "instances") each running one of a range of apps that can federate with each other. Each app uses one or more of the shared standards/ protocols for social networking on the web, the most popular being ActivityPub. The original fediverse apps were designed more as a micro-blogging network (eg Mastodon, Pleroma), but can be used for non-public team discussions using Direct Posts, and particularly for discussion between teams around solving shared problems. More recently, multimedia apps like PixelFed (images), PeerTube (videos), FunkWhale (music) have joined the fediverse, along with "threadiverse" forum apps like Lemmy, KBin, and Discourse.
  • Kontalk (various licenses): "Kontalk is run by a community of volunteers offering servers and splitting costs among them", all software used in both the XMPP servers and clients they distribute is free code. Full end-to-end encryption for both client-to-server and server-to-server channels. Uses phone numbers as user IDs, like Signal, but in Kontalk's case this is known to potentially compromise user privacy.

XMPP (jabber)

The eXtensible Messaging and Presence Protocol was originally designed for one-to-one Instant Messaging (IM), basically a way to see if a friend or coworker is online and available to chat, and send short text messages back and forth in realtime. It can also support chat rooms using Multi-User Chat (MUC), like an Internet Relay Chat (IRC) channel, but unlike IRC, you don't have to be on the XMPP server hosting the chat room to participate. Slack's stated mission is to provide team communications, not casual watercooler chat, and rose to its current popularity due to a perceived lack of team-specific features and user-friendliness in XMPP and IRC software. That said, if your team only started using Slack because "everyone is there", and you're comfortable with choosing an XMPP app with Slack-a-like features that may not work with all other XMPP servers and clients, these web-based apps may be of interest:

  • Libervia (AGPLv3): An experiment with building a federated blogging and forum network app on XMPP. Demo site at libervia.org. The developers are also working on an native desktop and Android app, called Cagou (AGPLv3).

Forum-like Slack Replacements

Maybe you found yourself using Slack because you needed a comms tool that has a better set of team features than most email lists, but you actually find realtime chat distracting rather than useful. Key criteria for being included here as a possible Slack replacement is supporting asynchronous text chat, and having at least one way of using it in on the web, so its usable by anyone with a web browser. But like Slack itself, many of these projects can also be used via desktop and mobile apps.


Possible Alternatives to Slack-a-likes

These are text chat tools that don't have a web app. To even test them, you need to download a desktop or mobile app (whichever is available). They are included here for anyone who wants the total opposite of Slack.

  • Jami (GPLv3+): a P2P ("distributed") chat app that supports one-to-one and group chats, file transfers, and voice/ video conferencing.


Stalled or Abandoned?

Abandonware

Free code Slack-a-likes that seem to have been started and then abandoned. Included here for completeness, and in case studying the code may help someone:

  • Jappix (AGPL): web client for XMPP. No commits on GH since 2017
  • Kandan (AGPLv3): Modeled on HipChat. No commits on GH since 2015.
  • Let's Chat ("MIT"): Compatible with XMPP/ MUC (see above), so a Let's Chat server can be accessed from any XMPP client, but doesn't federate with other XMPP servers. Abandoned by developers in about 2018.


Sources

Mainly blog pieces pointing out the problems with Slack, especially for open source communities, and in some cases suggesting replacements: