feat: Tauri Desktop App Setup & Web Speech Dictation Integration (phase1)
📌 Phase 1: Tauri Desktop App Setup + Web Speech Integration
Description
-
🖥 ️ Tauri Desktop Integration- Converted the existing React (Vite) web app into a desktop application using Tauri
- Configured
tauri.conf.jsonand verified app runs usingnpm run tauri dev
-
🎤 Web Speech API Implementation- Integrated
webkitSpeechRecognitionfor real-time speech-to-text - Handled lifecycle events (
onstart,onresult,onerror,onend)
- Integrated
-
📂 Corpus Account Integration- Integrated corpus login and fetching of audio files
- Displayed user corpus data within the UI
-
🔊 Audio Transcription Support- Enabled transcription of selected audio files from corpus
- Verified text output is correctly displayed in the editor
-
🧩 Modular Code Structure
- Organized code into:
- Components (
DictationEditor,WebSpeechDictation) - Hooks (
useWebSpeech) - Utils (
webSpeech)
- Components (
- Ensures scalability for future phases
- Organized code into:
-
⚠ ️ Graceful Handling of Unsupported APIs- Detected Web Speech API support using:
'webkitSpeechRecognition' in window - Displayed warning instead of crashing in Tauri environment
- Detected Web Speech API support using:
-
🧪 Testing & Validation
- Verified Web Speech works in browser
- Verified Tauri app launches successfully
- Confirmed corpus data fetching and audio transcription functionality
- Ensured clean repository (ignored build artifacts)
🧠 Note
Web Speech API is not supported in Tauri WebView (Linux/Desktop). This is expected behavior and will be handled in Phase 2 using fallback dictation.