|
| 1 | +## [1.0.0] - 2025-10-11 |
| 2 | + |
| 3 | +### 🎉 Major Release: Complete Migration to Tauri |
| 4 | + |
| 5 | +This release marks the complete migration from Electron to Tauri, delivering a high-performance, resource-efficient desktop application built with Rust and modern web technologies. |
| 6 | + |
| 7 | +### Added |
| 8 | +- **Tauri-based architecture:** Complete rewrite using Tauri 2.x framework with Rust backend |
| 9 | +- **Voice commands system:** Comprehensive voice command processing for all providers |
| 10 | + - Punctuation commands (period, comma, question mark, exclamation mark, etc.) |
| 11 | + - Key press commands (enter, tab, backspace, space, etc.) |
| 12 | + - Key combination commands (copy, paste, save, undo, select all, etc.) |
| 13 | + - Special commands (delete_last_word, grammar_correct, pause_dictation) |
| 14 | + - Regex-based command matching with flexible pattern recognition |
| 15 | + - Voice commands toggle in settings UI to enable/disable functionality |
| 16 | +- **Rust-based transcription services:** All provider integrations rewritten in Rust |
| 17 | + - Groq (Whisper-Large-v3-Turbo) with silence-based chunking |
| 18 | + - Deepgram (Nova-3) real-time streaming transcription |
| 19 | + - Cartesia real-time streaming with PCM audio pipeline |
| 20 | + - Google Gemini (2.5 Flash Lite) non-streaming transcription |
| 21 | + - Mistral (Voxtral) audio transcription |
| 22 | + - SambaNova (Whisper-Large-v3) transcription |
| 23 | + - Fireworks Whisper transcription |
| 24 | +- **Native keyboard injection:** Windows-native keyboard simulation using `enigo` crate |
| 25 | +- **Streaming support:** Real-time transcription for Deepgram and Cartesia providers |
| 26 | +- **Settings management:** Persistent settings with JSON storage |
| 27 | +- **Global shortcuts:** Native global hotkey registration via Tauri plugins |
| 28 | +- **Clipboard management:** Efficient clipboard operations via Tauri plugin |
| 29 | +- **Grammar correction:** Multi-provider grammar correction support |
| 30 | + - Groq (GPT-OSS-120B) |
| 31 | + - Google Gemini (2.5 Flash Lite) |
| 32 | + - Mistral (Small) |
| 33 | + - SambaNova (Llama-3.3-70B) |
| 34 | + - Fireworks (GPT-OSS-20B) |
| 35 | + |
| 36 | +### Changed |
| 37 | +- **Performance improvements:** ~80% reduction in memory usage compared to Electron version |
| 38 | +- **Faster startup:** Near-instant application launch with optimized Rust binary |
| 39 | +- **Smaller binary size:** Significantly reduced distributable size with Tauri's compact runtime |
| 40 | +- **Improved reliability:** Type-safe Rust backend eliminates entire classes of runtime errors |
| 41 | +- **Modern build system:** Cargo-based build with optimized release profile (size and LTO optimizations) |
| 42 | +- **Architecture redesign:** |
| 43 | + - Frontend: HTML/CSS/JavaScript for UI and audio capture |
| 44 | + - Backend: Rust for API calls, transcription processing, and system integration |
| 45 | + - IPC: Tauri command system for secure frontend-backend communication |
| 46 | +- **Voice command consistency:** Commands now work identically across all providers (streaming and batch) |
| 47 | + |
| 48 | +### Technical Details |
| 49 | +- **Backend dependencies:** |
| 50 | + - `tauri 2.8.5` - Core framework |
| 51 | + - `tokio` - Async runtime for concurrent operations |
| 52 | + - `reqwest` - HTTP client with HTTP/2 and TLS support |
| 53 | + - `tokio-tungstenite` - WebSocket client for streaming providers |
| 54 | + - `enigo 0.2` - Native keyboard injection |
| 55 | + - `serde/serde_json` - Serialization/deserialization |
| 56 | + - `regex` - Voice command pattern matching |
| 57 | + - `base64`, `urlencoding` - Data encoding utilities |
| 58 | + - `chrono` - Timestamp handling |
| 59 | +- **Build optimizations:** |
| 60 | + - Size optimization (`opt-level = "z"`) |
| 61 | + - Link-time optimization (LTO) |
| 62 | + - Symbol stripping |
| 63 | + - Single codegen unit for maximum optimization |
| 64 | +- **Tauri plugins:** |
| 65 | + - `tauri-plugin-global-shortcut` - System-wide keyboard shortcuts |
| 66 | + - `tauri-plugin-clipboard-manager` - Clipboard operations |
| 67 | + - `tauri-plugin-opener` - URL/file opening |
| 68 | + |
| 69 | +### Migration Notes |
| 70 | +- The Electron-based version (v0.6.7) is preserved in the `electron/` directory as legacy code |
| 71 | +- Settings from the Electron version are not automatically migrated |
| 72 | +- All functionality from the Electron version is replicated or improved in the Tauri version |
| 73 | +- Build process changed from `npm run build` to `npm run tauri build` |
| 74 | +- Development mode changed from `npm start` to `npm run tauri dev` |
| 75 | + |
| 76 | +### Breaking Changes |
| 77 | +- Requires Rust toolchain for building from source |
| 78 | +- Settings storage location changed (no automatic migration) |
| 79 | +- Different build commands and directory structure |
| 80 | + |
| 81 | +--- |
| 82 | + |
| 83 | +## Electron Legacy Versions (0.x.x) |
| 84 | + |
| 85 | +The following versions represent the legacy Electron-based implementation, available in the `electron/` directory. |
| 86 | + |
1 | 87 | ## [0.6.7] - 2025-10-04 |
2 | 88 |
|
3 | 89 | ### Changed |
|
0 commit comments