OtherActive

Tauri

Tauri is a framework for building tiny, fast binaries for all major desktop and mobile platforms.

Open source page

Field note

What it does

Tauri is a framework for building tiny, fast binaries for all major desktop and mobile platforms. Developers can integrate any frontend framework that compiles to HTML, JavaScript, and CSS for building their user experience while leveraging languages such as Rust, Swift, and Kotlin for backend logic when needed. Tauri has 3 main advantages: secure foundation, smaller bundle size, and flexibility.

Capabilities

Available capabilities

Tags

Tags

Ways to use it

Ways to use it

sdk

Rust / https://tauri.app/

npm

JavaScript / @tauri-apps/api

npm

JavaScript / @tauri-apps/cli

cli

Rust / Not filed

cli

shell / create-tauri-app

npm

javascript / create-tauri-app

sdk

javascript / @tauri-apps/cli

sdk

javascript / https://tauri.app/start/frontend/nextjs/

sdk

javascript / https://tauri.app/start/frontend/nuxt/

sdk

rust / https://tauri.app/

sdk

Rust / https://tauri.app/

cli

rust / tauri-cli

sdk

rust / tauri

cli

Not filed / Not filed

other

Rust / tauri

cli

Rust / https://tauri.app/

Product features

Product features

android

android build

android dev

android init

android run

build

Build Command

Build via CLI: tauri build, android build, ios build.

bundle

Bundle Formats

Supports AppImage, AUR, Debian, RPM, Snapcraft, DMG, App Store, Microsoft Store, Windows Installer, Google Play, and cloud services.

Cargo Profile Options

Options like codegen-units, lto, opt-level, panic, strip, and trim-paths to reduce binary size.

CLI Hook Commands

Environment variables set for each hook command (beforeDevCommand, beforeBuildCommand, etc.) to conditionally build frontend or execute actions.

Code Signing Required

Signing required on most platforms.

Command Line Interface

Core runtime

The main Tauri runtime library.

create-tauri-app

Command-line tool to scaffold a new Tauri project.

Ecosystem Security

Tauri organization provides security documents on ecosystem, application lifecycle, threats, and future work.

Environment Variables

Documentation of all environment variables used by Tauri core crates and CLI.

init

ios dev

ios init

List of Commands

Multiple Language Bindings

Bindings for JavaScript, Rust, Swift, and Kotlin.

Native WebView

Uses system's native webview to reduce bundle size.

No SSR

Does not natively support server-side rendering.

Not Bundling WebViews

Tauri relies on the operating system's WebView, not bundling it, for faster security patches.

Notarization

Environment variables for Apple notarization, including Apple ID, password, API key, and issuer.

Platform Specific

Remove Unused Commands Feature

A config option to remove commands never allowed in capability files (ACL).

Signing

Environment variables for signing app bundles, including private keys and certificates.

Small Binary Size

Tauri provides very small binaries by default.

SSG, SPA, MPA Support

Supports static site generation, single-page apps, and multi-page apps.

Stable and Nightly Support

Supports both stable and nightly Rust toolchains for different optimization options.

TAO and WRY

Libraries for window creation and web view rendering.

Tiny Binaries

Minimal Tauri app can be less than 600KB in size.

Trust Boundaries

Tauri defines trust boundaries between Rust core and frontend WebView, with IPC as the bridge.

Versioning

Version defined in tauri.conf.json or Cargo.toml.

Vite Recommended

Vite is recommended for SPA frameworks and plain JS/TS projects.