https://github.com/punarinta/make-slack-great-again
Native C++/Qt6 Slack client for Linux, macOS and Windows. Lightweight alternative to the official Electron app.
https://github.com/punarinta/make-slack-great-again
cplusplus cross-platform desktop-app electron-alternative im-client lightweight linux macos messaging native qt6 slack slack-client windows
Last synced: about 1 hour ago
JSON representation
Native C++/Qt6 Slack client for Linux, macOS and Windows. Lightweight alternative to the official Electron app.
- Host: GitHub
- URL: https://github.com/punarinta/make-slack-great-again
- Owner: punarinta
- License: gpl-3.0
- Created: 2026-06-05T20:08:33.000Z (about 1 month ago)
- Default Branch: master
- Last Pushed: 2026-07-01T09:02:45.000Z (6 days ago)
- Last Synced: 2026-07-01T09:07:26.233Z (6 days ago)
- Topics: cplusplus, cross-platform, desktop-app, electron-alternative, im-client, lightweight, linux, macos, messaging, native, qt6, slack, slack-client, windows
- Language: C++
- Homepage: https://msga.app
- Size: 3.63 MB
- Stars: 65
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Make Slack Great Again
A fast native Slack client built in C++ with Qt6.
## About
msga is primarily a Slack client — that's its main focus and the most complete, battle-tested backend. It also supports other messaging platforms in **experimental mode**: Microsoft Teams and email. The same Slack-like UI is used for all of them, so channels, direct messages and conversations from every connected service share one consistent interface and live side by side in the same workspace rail.




## Demo

## Download
[](https://msga.app/download/msga-linux-x86_64)
[](https://msga.app/download/msga-macos-arm64.dmg)
[](https://msga.app/download/msga-windows-x86_64.exe)
## Or build your own version
msga does not ship with messaging credentials. You must register your own app with each service you want to connect and configure it before the client will connect. This is a one-time setup.
### Step 1. Set up a messaging backend
Pick the service(s) you want and follow the matching guide. Each ends by writing the credentials into `credentials.cmake`:
- **[Slack setup](docs/SETUP_SLACK.md)** — create a Slack app, scopes, socket mode, events.
- **[Microsoft Teams setup](docs/SETUP_TEAMS.md)** — register an Entra app, Graph permissions, admin consent.
You can configure more than one — each fills in its own values in the same `credentials.cmake`, and the workspaces stack in the same rail.
The app version lives in `version.cmake` (tracked in git). Increment `MSGA_VERSION` there before each public release.
### Step 2. Configure build environment
> **Prerequisites:** CMake ≥ 3.24, Qt 6.1+ dev packages, a C++20 compiler (GCC 12+ / Clang 14+ / MSVC 2022+)
```sh
./scripts/configure-linux.sh # for Linux
./scripts/configure-mac.sh # for macOS
scripts/configure-windows.ps1 # for Windows
```
On Windows, run the PowerShell script from an **elevated** (Administrator) terminal:
```powershell
scripts\configure-windows.ps1
```
If you see _"running scripts is disabled"_, enable local scripts first (one-time, machine-wide):
```powershell
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
```
Or bypass the policy for a single run without changing the system setting:
```powershell
powershell -ExecutionPolicy Bypass -File scripts\configure-windows.ps1
```
### Step 3. Build and run
```sh
./scripts/build.sh
./build/msga # for Linux
./build/msga.app/Contents/MacOS/msga # for macOS
```
On Windows:
```powershell
scripts\build.ps1
build\Debug\msga.exe
```
If you see _"running scripts is disabled"_, see the execution policy note in Step 2, or run directly:
```powershell
powershell -ExecutionPolicy Bypass -File scripts\build.ps1
```