A couple of months ago, you may recall, I wrote an open letter to Slack saying that they shouldn't shut down their IRC and XMPP gateways.
Slack sent me a nice reply saying that they had passed it along to their product team. I am sure that their product team read it, and nodded sympathetically, and then didn't change their minds. Slack is still shutting down those gateways on May 15th -- tomorrow.
This is not great, but I have a partial solution.
"...Holy beefwaffles, Zarf just wrote a Slack client?!" Yes! Sort of. Ish? I wrote a very small Slack client -- the most minimal app that could still be called an interactive Slack client.
Before I describe it, let me point out a few alternatives that already exist:
- slackcat: Post snippets to Slack from the command line.
- slack-term: A terminal-window Slack client.
- terminal-slack: Another terminal-window Slack client.
These are cool! They are not quite what I want. I want something that will sit in a terminal window and show all my favorite Slack channels -- just the important ones -- in chronological order. Yes, interleaved.
The point is that I never have to type in this window; I can just keep an eye on it. Conversations flow by. If I want to jump in, I can type a reply there (to any channel).
Of course, my client doesn't handle any of the fancy Slack features like threading, reactions, search, or file attachments. It's just a plain text stream. If I want to do anything more than that, I fire up the official Slack client and go to town.
But you're not here for my computer usage habits! You're here for the Slack client, so here's the repository. (Python3 code.)