An open API service indexing awesome lists of open source software.

https://github.com/atomicerror/whisper-desktop

A gorgeous, premium Rust & Tauri GUI to compile, manage, and sequentially batch-transcribe media files utilizing whisper.cpp on Linux.
https://github.com/atomicerror/whisper-desktop

gui html javascript linux rust tauri tauri2 transcription whisper whisper-cpp

Last synced: 11 days ago
JSON representation

A gorgeous, premium Rust & Tauri GUI to compile, manage, and sequentially batch-transcribe media files utilizing whisper.cpp on Linux.

Awesome Lists containing this project

README

          


Whisper Desktop Logo

Whisper Desktop


A premium, state-of-the-art, and gorgeous native Rust & Tauri GUI designed for whisper.cpp.

Run high-performance local speech-to-text models with ease, beauty, and complete privacy.


License MIT
Platform Linux
Built With Rust & Tauri

---

## πŸ“Έ Screenshots & Visual Walkthrough

Here is a preview of the premium cyber-neon glassmorphic interface:

| πŸŽ›οΈ Dashboard Home | πŸ—οΈ Build Screen |
| :---: | :---: |
| ![Dashboard Home](assets/screenshots/dashboard.png) | ![Build Screen](assets/screenshots/build.png) |

| πŸ› οΈ Configuration Step | πŸŽ™οΈ Transcription Screen |
| :---: | :---: |
| ![Configuration Step](assets/screenshots/configuration.png) | ![Transcription Screen](assets/screenshots/transcription.png) |

---

## ✨ Features at a Glance

Whisper Desktop is designed to feel like a next-generation utility, combining the blistering performance of Rust/C++ with a highly aesthetic, responsive, and modern glassmorphic web dashboard.

* **⚑ Multiple Acceleration Backends:** Choose between **CPU**, **Vulkan**, **OpenVINO**, or **CUDA** directly from the UI to match your hardware capabilities.
* **πŸ“‚ Batch Processing Queue:** Import multiple files, view their duration, remove individual files, clear the queue, and transcribe them sequentially.
* **🎀 Live Audio Recording:** Record audio directly from your microphone with real-time waveform animation and transcribe it instantly.
* **🎞️ Integrated Media Converter:** Automatically extract audio from video files using integrated utilities.
* **🎨 Cyber-Neon Glassmorphic Design:** A premium dark-mode interface with elegant micro-animations, harmonized gradient glowing borders, and intuitive layout transitions.
* **πŸ“¦ Easy Drag & Drop HUD:** Drag audio or video files anywhere into the application to instantly load them into your queue.
* **βš™οΈ Full Transcription Settings:** Adjust transcription parameters such as GGML model selection, thread count, target language, translation to English, and output formats (TXT, SRT, VTT).

---

## πŸ› οΈ Interactive Architecture

Whisper Desktop orchestrates native `whisper.cpp` binaries using Tauri’s lightning-fast Rust IPC bridge.

```mermaid
graph TD
A[Glassmorphic UI - HTML/CSS/JS] -->|Tauri IPC Command| B(Tauri Core - Rust)
B -->|Launch Process| C[whisper.cpp Core C++ Engine]
C -->|Thread Allocation| D[CPU Execution]
C -->|GPU Acceleration| E[Vulkan / CUDA / OpenVINO]
F[(Local GGML Models)] -.->|Loads Model| C
G[ffmpeg Engine] -.->|Extracts Audio| B
```

---

## πŸš€ Installation & Packaging

### πŸ“¦ Arch Linux (AUR)
Whisper Desktop is available in the Arch User Repository (AUR) as a precompiled binary package (recommended for Arch users):
```bash
paru -S whisper-desktop-bin
```

### 🐧 Debian / Ubuntu (`.deb`)
Download the latest `.deb` file from the [GitHub Releases](https://github.com/AtomicError/whisper-desktop/releases) page and install it:
```bash
sudo dpkg -i Whisper.Desktop_*_amd64.deb
sudo apt-get install -f # Install dependencies if missing
```

### 🎩 RedHat / Fedora (`.rpm`)
Download the `.rpm` package and install via `dnf`:
```bash
sudo dnf install Whisper.Desktop-*.rpm
```

### 🐳 AppImage
For any other Linux distribution, simply download the portable `AppImage`, make it executable, and run it:
```bash
chmod +x Whisper.Desktop_*.AppImage
./Whisper.Desktop_*.AppImage
```

---

## πŸ’» Development & Building from Source

To build Whisper Desktop locally, ensure you have the following prerequisites installed on your system:
* **Node.js** (v18 or higher) & **npm**
* **Rust** toolchain (Cargo, rustc)
* **System Libraries:** `gtk3`, `webkit2gtk-4.1`, `ffmpeg`

### 1. Clone the Repository
```bash
git clone https://github.com/ggml-org/whisper.cpp.git
cd whisper.cpp/manager/desktop
```

### 2. Install Frontend Dependencies
```bash
npm install
```

### 3. Run in Development Mode
Start the live-reloading hot development server:
```bash
npm run tauri dev
```

### 4. Build Production Packages
Compile and bundle the production release for your system:
```bash
npm run tauri build
```
Production packages will be generated inside `src-tauri/target/release/bundle/`.

---

## πŸ“¦ Project Structure

```
whisper-desktop/
β”œβ”€β”€ src/ # Glassmorphic Frontend Core
β”‚ β”œβ”€β”€ assets/ # Neon SVGs, custom icons, and visual elements
β”‚ β”œβ”€β”€ index.html # Main dashboard layout (6 premium feature panels)
β”‚ β”œβ”€β”€ index.css # Glassmorphism, animations, and color design system
β”‚ └── main.js # IPC binding, queue state, and audio recorders
β”œβ”€β”€ src-tauri/ # Tauri backend (Rust)
β”‚ β”œβ”€β”€ src/ # Tauri Rust entry point and command routers
β”‚ β”œβ”€β”€ icons/ # Beautiful high-resolution custom cyber-neon app icons
β”‚ β”œβ”€β”€ permissions/ # Tauri v2 security policies and capability schemas
β”‚ β”œβ”€β”€ Cargo.toml # Rust manifest
β”‚ └── tauri.conf.json # Build target configs (deb, rpm, appimage)
β”œβ”€β”€ PKGBUILD # Arch Linux packaging script
└── README.md # Project documentation
```

---

## πŸ”’ Privacy & Local Processing

All audio transcription, processing, and recording are executed **100% locally** on your computer. Your audio files, recordings, and transcriptions are never sent to external servers or cloud APIs, ensuring absolute confidentiality and privacy.

---

## πŸ“„ License
This project is licensed under the [MIT License](LICENSE).