How it works
The interface is an ordinary web front end (React, Vue, Svelte or plain HTML) shown in the system WebView: WebView2 (Microsoft Edge's engine) on Windows, WKWebView (Safari's engine) on macOS and iOS, WebKitGTK on Linux and the system WebView on Android. The back end is Rust: the front end calls Rust functions (commands) through invoke, and Rust can send events back.
With no browser bundled, a basic app can be only a few megabytes and uses far less memory than an Electron equivalent. Security is deny-by-default: capability files list exactly which commands and plugins each window may use. Official plugins cover the file system, dialogs, notifications, a SQL database, global shortcuts and a signed auto-updater.
The trade-offs come from the same design. Each system's WebView renders slightly differently, so the interface needs testing on all of them, and native features mean writing or reading Rust. Tauri 2, released in 2024, added iOS and Android support.
Tauri pros and cons
Pros
- Small installers and low memory use, because it uses the system WebView
- Rust core is fast and memory-safe, good for heavy or low-level work
- Permissions are locked down by default through capabilities
- One project can target Windows, macOS, Linux, iOS and Android
Cons
- Rendering differs between WebView2, WebKit and WebKitGTK, so test on each system
- Native features mean learning Rust, which takes time
- Younger ecosystem with fewer ready-made plugins than Electron
When to use Tauri
Pick it when
- Download size, memory use and start-up time matter
- The app does heavy local work (files, hardware, system monitoring) that suits Rust
- You want tight control over what the interface is allowed to call
Skip it when
- The app depends on Chrome-only web features or pixel-identical rendering everywhere
- Nobody on the team can maintain Rust code
Tauri pricing
Tauri vs the alternatives
Related terms
More in Desktop apps
Frameworks