Slack Alternatives

From P2P Foundation
Revision as of 05:18, 19 September 2020 by unknown (talk) (Fixed a bunch of typos, badly formatted links, unclear sentences etc, moved Sources links to article titles)
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 IRC or XMPP client. Having IRC and XMPP bridges 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:

  • Let's Chat ("MIT"): Demo available by clicking 'Try a Demo' on the home page. Compatible with XMPP/ MUC (see below), so a Let's Chat server can be accessed from any XMPP client, but doesn't federate with other XMPP servers.
  • 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 private team discussions using Direct Messages, and particularly for discussion between teams around solving shared problems. More recently, multimedia apps like PixelFed (images), PeerTube (videos), and FunkWhale (music) have joined the fediverse.
  • Gitter ("MIT"): The hosted instance at Gitter.im is run by GitLab and free to use. "Slack ... has limitations for large communities and public usage. All of Gitter’s public conversation history is completely unlimited, open, archived and indexed by popular search engines, contributing the public knowledge base of the internet". GitLab announced they were acquiring Gitter in 2017.
  • 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.
  • The Lounge ("MIT"): Web client for IRC. Can be used on servers like Freenode, which has hosted chat rooms for free code projects since 1998.

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:


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.

  • Discourse (GPLv2+): Web forums with full email integration, so users can receive and reply to posts by email. Developed by an VC-funded company called the Civilized Discourse Construction Kit Inc, that is incorporated in the USA.
  • GroupServer (ZPLv2.1): Demo available at OnlineGroups.net. Mailing lists that can also be used like forums, using the searchable archive website. Developed by OnlineGroups, which is operated by a private company called Fiorenza Limited, based in Aotearoa (NZ).
  • Loomio (AGPLv3): Demo available at Loomio.org. Supports both discussions and decision-making using a range of poll types. Granular public/ private settings for each groups, subgroups, threads, and poll. Full email integration, so users can receive and reply to posts by email, and participate in polls. Developed by an Aotearoa (NZ) based worker-owned coop that is a member of the Enspiral network.


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.

  • Patchwork (AGPLv3): a P2P social network that federates with the SSB (Secure Scuttlebutt) protocol. Desktop apps are available for GNU/Linux, Mac, and Windows. There is also an Android/Linux app for SSB called Manyverse (MPLv2).


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:

  • Candy ("MIT"): web client for XMPP, the only one I'm aware of to add WebRTC support. Was handed over to the Adhearsion Foundation before development ceased.
  • JWChat (GPLv2+): possibly the oldest web client for XMPP
  • Kaiwa ("MIT"): web client for XMPP. Some activity carried on in a fork by GH user ForNeVeR, but seems mostly inactive.
  • Kandan (AGPLv3): Modeled on HipChat. No commits on GitHub since 2015.
  • Jappix (AGPL): web client for XMPP
  • Soashable (GPL): web client for XMPP, built by the developer of Xmpp4js (LGPL, also unmainained)
  • SparkWeb (LGPL?): web client for XMPP
  • Toc.im (AGPLv3): P2P chat client built on Telehash


Sources

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