Open-source WhatsApp desktop client for Windows, macOS and Linux.
SocialSvelte · TypeScriptGitHub @wemilabsOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
A Tauri-based lightweight WhatsApp desktop client
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗An unofficial native-webview wrapper for the official WhatsApp Web client, named WhatheRust so it isn't confused with Meta's own WhatsApp desktop app. It uses the operating system's webview instead of bundling Electron and Chromium.
Tauri uses WebView2, WKWebView, or WebKitGTK provided by the operating system rather than shipping Chromium and Node.js, resulting in a smaller binary and lower memory use. WhatsApp has no official third-party API; reusing its official web client avoids reimplementing the protocol and the associated account-ban risk.
<app local data dir>/webview (for example, ~/.local/share/com.wemilabs.whatherust/webview on Linux).apps/
├── desktop/
│ ├── src/ Static fallback required by Tauri
│ └── src-tauri/
│ ├── Cargo.toml Rust package and dependencies
│ ├── build.rs Tauri build integration
│ ├── tauri.conf.json Window, frontend, bundle, and updater configuration
│ ├── capabilities/whatsapp-web.json
│ ├── icons/ App and tray icons; SVG files are the sources
│ └── src/ Webview, tray, and plugin setup
└── web/ SvelteKit website
.github/workflows/ CI and release workflows
package.json Root scripts and package manager
pnpm-workspace.yaml Workspace package list
turbo.json Monorepo task configuration
cargo install tauri-cli --version "^2" --locked.libwebkit2gtk-4.1-dev, libayatana-appindicator3-dev, librsvg2-dev, libxdo-dev, and libssl-dev (see the Tauri Linux prerequisites).Install the workspace dependencies from the repository root:
pnpm install
Run the desktop wrapper or website from the repository root:
pnpm dev:desktop
pnpm dev:web
Build the desktop bundles from the repository root:
pnpm --filter @whatherust/desktop tauri build
Alternatively, run cargo tauri dev from apps/desktop/src-tauri. Bundles are written under
apps/desktop/src-tauri/target/release/bundle/.
Release builds check GitHub Releases for updates on launch. Updates are signed with the updater
key; configure the TAURI_SIGNING_PRIVATE_KEY repository secret for release builds. Push a vX.Y.Z
tag to create a draft release, which is published after all platform builds succeed.
The app version is taken from the tag, so use vX.Y.Z with valid SemVer.
The SvelteKit website lives in apps/web. Run it with pnpm dev:web; an optional GITHUB_TOKEN
environment variable raises the GitHub API rate limit without needing any scopes. The site is
deployed on Vercel.
The icons are generated from the SVG sources in apps/desktop/src-tauri/icons/:
cd apps/desktop/src-tauri
rsvg-convert -w 1024 -h 1024 icons/icon.svg -o /tmp/icon.png
cargo tauri icon /tmp/icon.png -o icons
rsvg-convert -w 44 -h 44 icons/tray-template.svg -o icons/tray-template.png
This project is licensed under the MIT License.