Skip to content

Architecture overview

Synthezia is a Tauri 2 desktop application. The React and TypeScript interface calls registered Rust commands through Tauri; Rust owns runtime setup, local media processing, persistence, recording, and provider clients.

Layer Owner Main responsibility
React UI and Zustand stores src/ User actions, session state, model requirements, provider selection, and rendering.
Tauri command registration src-tauri/src/lib.rs Exposes the intended Rust command surface to the webview.
Runtime and permissions src-tauri/src/runtime.rs Bundled sidecars, model directories, Ollama lifecycle, recommendations, and macOS permission controls.
Processing and AI Rust audio, transcription, summarization, search, and chat modules FFmpeg conversion, whisper.cpp, local or remote generation, and retrieval.
Persistence src-tauri/src/db.rs SQLite sessions, transcripts, summaries, and derived search data.

Keep source-of-truth decisions at the layer that owns the behavior. Do not document a marketing claim as current behavior without code or artifact evidence.