Tauri

Build tiny, fast, and secure desktop and mobile apps with a Rust backend and a web frontend.

Framework
Cargo
v3.0.0-alpha.3
111,435 stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
91 /100 Excellent
Development Activity 100
Maintenance 100
Community 64
Maturity 60
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
91 /100 Excellent
Architecture 95
Code Quality 90
Innovation 88
Learning Curve 88

Tauri is a framework for building cross-platform desktop and mobile applications that pair a Rust backend with a web-based user interface. Instead of shipping an entire browser engine, it renders your HTML/CSS/JS through each operating system’s native webview (WKWebView, WebView2, WebKitGTK), producing binaries that are dramatically smaller and more memory-efficient than typical Electron apps.

Beyond rendering, Tauri owns the full application lifecycle: it scaffolds projects, wires a secure IPC bridge between JavaScript and Rust commands, enforces a capability-based permission system, and bundles finished apps into platform-native installers (.dmg, .deb, .rpm, .AppImage, .msi, .exe) with an optional built-in updater. You can bring any frontend framework that compiles to HTML, JS, and CSS.

What You Get

  • A Rust application core that renders your existing web frontend through the OS-native webview, keeping binaries small and memory usage low.
  • A type-safe IPC layer that exposes Rust functions to JavaScript via the #[command] macro and generate_handler!.
  • A capability- and permission-based security model (ACL) that scopes what the frontend is allowed to invoke.
  • A built-in bundler that produces native installers for macOS, Windows, and Linux, plus a self-updater for desktop.
  • First-class mobile support for iOS and Android alongside the desktop targets.

Common Use Cases

  • Porting an existing web application into a lightweight, installable desktop app without the overhead of Electron.
  • Shipping a single codebase to desktop and mobile with native installers and app-store bundles.
  • Building security-sensitive desktop tools where a granular permission system over native APIs matters.
  • Creating developer tools, dashboards, and utilities that need system tray icons, native notifications, and auto-updates.

Under The Hood

Architecture — Tauri is a multi-crate workspace layered around a runtime abstraction. The public tauri crate (crates/tauri, ~1,260 lines in lib.rs and a 2,664-line app.rs) exposes the app builder, Manager, AppHandle, window/webview, menu, tray, and plugin APIs. Windowing and webview are delegated through the tauri-runtime trait and its default implementation tauri-runtime-wry, which drives tao for window handling and WRY for a unified interface over WKWebView, WebView2, and WebKitGTK. A codegen layer (tauri-codegen, tauri-macros) compiles tauri.conf.json, embeds assets, and generates the IPC command dispatch, while a RuntimeAuthority enforces the capability/permission ACL on every frontend call routed through the ipc module. Tech Stack — Written in Rust (edition 2021+) with Tokio as the async runtime; serde/serde_json for configuration and IPC serialization; thiserror and anyhow for errors; url and uuid utilities; and the tao/WRY stack for native windowing. The repo is a Cargo + pnpm hybrid, splitting Rust crates (tauri, tauri-build, tauri-cli, tauri-bundler, tauri-runtime, etc.) from TypeScript API/CLI packages. Code Quality — The codebase is mature and well-tested: roughly 20 source files under the core crate carry inline #[cfg(test)] coverage, and a dedicated test module ships a mock_runtime so applications and Tauri itself can be exercised without a real webview. Extensive //! module docs, a documented feature-flag matrix, and a large examples/ tree (api, multiwindow, isolation, resources, and more) back the public surface. API Design — The developer experience centers on ergonomic macros — #[command], generate_handler!, and mobile_entry_point — that reduce IPC boilerplate to annotated functions, plus a fluent Builder pattern for assembling the app. Feature flags are granular and documented, and the CLI (create-tauri-app) scaffolds a working project in one command.

Used by 116 apps in this directory

TypeScript
63%
AGPL 3.0

undb

Databases · No Code Platforms

2,978

Self-hosted no-code database and BaaS that lets you manage structured data visually with multi-database support, formula fields, and auto-generated OpenAPI endpoints.

View details
61
Repo Health
66
Technical
65
Dependency
Built with
TypeScript 63%
Svelte 35%
Updated 2 weeks ago
Python
73%
Apache 2.0

Unsloth

AI Assistants · AI Development

76,886

Run and fine-tune LLMs, diffusion, audio and embedding models on your own hardware, from a native desktop app, a browser UI, or a Python library.

View details
89
Repo Health
83
Technical
70
Dependency
Built with
Python 73%
TypeScript 21%
Updated 1 weeks ago
Python
73%
Apache 2.0

Unsloth

AI Assistants · AI Development

76,886

Run and fine-tune LLMs, diffusion, audio and embedding models on your own hardware, from a native desktop app, a browser UI, or a Python library.

View details
89
Repo Health
83
Technical
70
Dependency
Built with
Python 73%
TypeScript 21%
Updated 1 weeks ago
Python
73%
Apache 2.0

Unsloth

AI Assistants · AI Development

76,886

Run and fine-tune LLMs, diffusion, audio and embedding models on your own hardware, from a native desktop app, a browser UI, or a Python library.

View details
89
Repo Health
83
Technical
70
Dependency
Built with
Python 73%
TypeScript 21%
Updated 1 weeks ago
Rust
50%
Apache 2.0

Vibe Kanban

AI Agents · AI Code Assistants · Project Management

28,209

A kanban board for planning work and dispatching Claude Code, Codex, Gemini CLI, and eight other coding agents into isolated git worktrees, then reviewing and merging their diffs from one UI.

View details
75
Repo Health
75
Technical
64
Dependency
Built with
Rust 50%
TypeScript 46%
Updated 2 weeks ago
Rust
50%
Apache 2.0

Vibe Kanban

AI Agents · AI Code Assistants · Project Management

28,209

A kanban board for planning work and dispatching Claude Code, Codex, Gemini CLI, and eight other coding agents into isolated git worktrees, then reviewing and merging their diffs from one UI.

View details
75
Repo Health
75
Technical
64
Dependency
Built with
Rust 50%
TypeScript 46%
Updated 2 weeks ago
Python
95%
AGPL 3.0

VideoHighlighter

Video Editors

138

Local AI desktop tool that scores, explains, and cuts the moments that matter in raw footage — scene, motion, audio, object, and action detection, fully offline via Ollama and Whisper.

View details
80
Repo Health
84
Technical
71
Dependency
Built with
Python 95%
Updated 1 weeks ago
Python
95%
AGPL 3.0

VideoHighlighter

Video Editors

138

Local AI desktop tool that scores, explains, and cuts the moments that matter in raw footage — scene, motion, audio, object, and action detection, fully offline via Ollama and Whisper.

View details
80
Repo Health
84
Technical
71
Dependency
Built with
Python 95%
Updated 1 weeks ago
Python
95%
AGPL 3.0

VideoHighlighter

Video Editors

138

Local AI desktop tool that scores, explains, and cuts the moments that matter in raw footage — scene, motion, audio, object, and action detection, fully offline via Ollama and Whisper.

View details
80
Repo Health
84
Technical
71
Dependency
Built with
Python 95%
Updated 1 weeks ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers