What "native" means for a Slack client
The official Slack desktop app is built on Electron — a framework that bundles the full Chromium browser engine alongside the application code. When you open Slack, you're running a complete copy of Chrome, configured to display one website. That's why it uses 400 MB to 1 GB of RAM at startup.
A truly native client takes a different approach: it uses a UI toolkit like Qt or GTK that renders widgets using your OS's own graphics stack, and it calls Slack's API directly rather than loading Slack's web interface in a browser. The result is far lower memory use and near-zero CPU at idle.
There's also a middle ground: WebView wrappers that swap Electron for a lighter runtime but still render Slack's web interface. They're lighter than the official client, but not truly native.
Projects that stopped
ScudCloud
ScudCloud was one of the earliest Linux Slack clients, built with Qt and WebKit. It wasn't truly native — it still rendered Slack's web UI inside a Qt WebView — but it was lighter than the official app and felt like a Linux desktop citizen. Development stopped around 2018 when Slack began restricting the legacy API ScudCloud depended on. The repository is now archived on GitHub.
Slacken
Slacken was a genuine attempt at a native Qt5 client that called Slack's API directly and rendered real desktop widgets. It was ambitious — targeting under 32 MB of RAM — and the architecture was correct. But it never reached feature completeness. The last meaningful commit was in 2017, and Slack's authentication flow has changed substantially since then. It won't connect to modern workspaces.
slaq
slaq was another Qt5-based client taking the same native API approach. It got further along than Slacken — channels, messages, and basic DMs all worked at one point. But the last substantive update was around 2019, and it has the same API compatibility problem. Effectively abandoned.
Projects still active today
CrabChat
CrabChat is written in Rust and Tauri. It's actively maintained and represents the WebView-wrapper approach done well: by replacing Electron's bundled Chromium with Tauri's system WebView, it uses around 200–300 MB instead of 400–600 MB, and it still renders Slack's full web interface so you get complete feature parity.
The tradeoff is that "lighter than Electron" is not the same as "native." CPU at idle is not near zero, and the app renders in a WebView rather than with OS-native widgets. If your goal is minimum resources and a real desktop UI, it's a step in the right direction — but not the same thing.
slk (terminal UI)
slk is a TUI Slack client written in Go. It's extremely lightweight — under 20 MB — and cold-starts in milliseconds. If you live in the terminal and primarily need text messaging, it's worth a look. The limitations are real: no images, no file previews, minimal emoji support, and setup requires familiarity with the command line and Slack's API tokens.
msga
msga is a native Slack client built with Qt6 — the same framework used by Telegram Desktop, VLC, and KDE. It calls Slack's API directly and renders with native Qt widgets. It's the only actively maintained client in this category targeting both real feature coverage and true desktop integration.
Memory at startup: ~60 MB. CPU at idle: ~0%. Supported features include messaging, channels and DMs, threads, search, file sharing, and emoji reactions. Huddles (voice/video) are on the roadmap. The project is GPL-3.0 and supports Linux, macOS, and Windows.
| Project | Status | Approach | RAM |
|---|---|---|---|
| Official Slack | Active | Electron | 400 MB – 2 GB+ |
| CrabChat | Active | Tauri / WebView | ~200–300 MB |
| slk (TUI) | Active | Terminal UI | <20 MB |
| ScudCloud | Archived 2018 | Qt / WebView | — |
| Slacken | Abandoned 2017 | Qt5 native | — |
| slaq | Abandoned 2019 | Qt5 native | — |
| msga | Active | Qt6 native | 60–80 MB |
Getting msga
msga is available for Linux (x86-64), macOS (Apple Silicon), and Windows. It's free and open source. For a closer look at what the memory difference means in practice, see the lightest Slack client for Linux.