Slack Alternatives
= 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
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 Core-Us).
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, or at Bitnami. Compatible with XMPP/ MUC (see below), so a Let's Chat server can be accessed from any XMPP client, but the interface and features are so Slack-a-like I decided to put it in this category.
- Mattermost (Apache 2.0): Demo available at gitlab.mattermost.com.
- Rocket.Chat ("MIT"): Demo available at open.rocket.chat. Messages can be edited after sending.
- Wire (GPLv3): Demo available at https://app.wire.com. Has a web app and native apps for all the major OS. Impressive list of features including voice and video conferencing. Downsides: desktops apps use Electron (so no 32-bit support) and will probably continue to do so for some time. Self-hosted Wire servers can't yet do server>server federation with each other, although this is said to be in the works.
- 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.
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:
- Element (formerly Riot, Apache 2.0): Demo available at app.element.io . Federates with any chat server using the matrix protocol. Element also offers desktop and mobile apps for all major OS; GNU-Linux, MacOS, Windows, Android, and iOS. Messages can be edited after sending.
- fediverse: not an app or a service, but rather a federation of services (or "instances") each running one of a range of apps (eg Mastodon, Pleroma) 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 desiged more as a micro-blogging network, but can be used for private team discussions using Direct Messages, and particularly for discussion between teams around solving shared problems.
- 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 announcement about buying Gitter.
- 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.
- Spectrum (NewBSD): Demo available at spectrum.chat. Project member Max says: "threads and communities are completely public by default! They are fully indexed on search engines and everybody can find them". Threaded like mailing lists. Messages can be edited after sending. No plans to make the package easier self-host, although it is possible. No plans to support federation with other instances of Spectrum or other software. Originally developed by Space Program Inc. Has since been acquired by Microsoft via GitHub.
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:
- inVerse (MPL 2.0): A fullscreen version of Converse.JS.
- JSXC ("MIT"): web client for XMPP. Was (is?) used by Diaspora to provide a realtime chat feature.
- Libervia (AGPLv3): Web client for Salut à Toi (AGPLv3). An experiment with building a federated blogging and forum network app on XMPP.
- Movim (AGPLv3): An experiment with building a federated social network app on XMPP.
- Xabber (AGPLv3): Aim to support all the new features added in recent extensions to XMPP. Native app for Android also available.
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).
- Hylo (AGPLv3): Acquired in 2019 by Holo, developers of the Holochain hosting platform.
- 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:
- 2015: 'Self-Hosted Team Chat Options and Alternatives' - Andrei Soroker and Niral Patel, SameRoom blog
- 2015: 'Please don't use Slack for FOSS projects' - Drew DeVault's blog
- 2015: 'So Yeah We Tried Slack… and We Deeply Regretted It' - FreeCodeCamp blog
- 2016: 'Software Slack smackback: There's no IRC in team (software), say open-sourcers' - Scott Gilbertson, The Register
- 2017: 'Goodbye Slack and hello open-source messaging platform' - Wilhelm, Santiment blog
- 2017: 'Why Slack is inappropriate for open source communications' - Dave Cheney's blog
- 2017: '5 open source alternatives to Slack for team chat' - Jason Baker, OpenSource.com
- 2018: 'Why Slack is better, and why open communities shouldn't use it' - Dave Lane's blog