Hey HN,
I built TermoSlack, a fully terminal-based Slack client written in Node.js, with real-time updates using Socket Mode and OAuth user login.
Why I built it - good question!
================================
Can be several answers:
1) uses way less ram than original slack client
2) doesn't require electron
3) very fast ngl
and more more...
What features are in there ???
================================
--Real-time Slack messages via Socket Mode (xapp + xoxb)
--User login with OAuth (no shared bot identity)
--Multiple workspaces
--Channel list, message view, message sending
--Terminal UI built with neo-blessed
--Works fully offline besides Slack API calls
--Packaged as a single Windows/Linux executable
What I used to build this project ??
====================================
--Node.js (ESM)
--@slack/web-api & @slack/socket-mode
--neo-blessed TUI
--express (local OAuth callback server)
--pkg (for producing a standalone executable)
Earlier I was thinking python to implement this but I switched over to node.js as it would make this project more challenging
Work in progress:
=================
--DMs + private channels
--Threaded conversations
--Message reactions
--File uploads
--User presence indicators
--Keybindings
--Multi-workspace switching
--Custom Themes
Your feedback will be precious to me and for my project. I would love to hear your feedback for improving this project more and more !
Thanks HN
github link : github.com/adhyys07/TermoSlack
https://github.com/adhyys07/TermoSlack
reply