# Tauri —— 用前端技术打造小巧快速的跨平台桌面应用
## 项目介绍
Tauri 是一个用于构建轻量级、高性能桌面应用程序的框架。与 Electron 不同,Tauri 后端使用 Rust 语言编写,前端可以使用任意能编译为 HTML/CSS/JS 的框架(React、Vue、Svelte、Solid 等)。Tauri 生成的二进制文件体积极小(Windows 上可小于 10MB),启动速度快,内存占用低,被广泛应用于需要高效桌面体验的生产项目中。
Tauri 由 Tauri Programme组织和 Tauri 公司维护,支持 Windows、macOS、Linux、iOS、Android等多个平台,全球星标数超过 10 万,是当前最火热的桌面应用框架之一。
## 核心特色功能
**极小包体积**:Electron 应用动辄 100MB 以上,而 Tauri 应用可小于 10MB。这是因为 Tauri 不捆绑 Node.js 和整个 Chromium 浏览器,而是使用操作系统原生 WebView,极大减少了体积。
**高性能**:由于直接调用系统 WebView,Tauri 的渲染性能非常优秀,内存和 CPU 占用远低于 Electron。
**Rust 后端**:后端逻辑使用 Rust 编写,享受 Rust 的内存安全保证和极佳性能,同时可以调用整个 Rust 生态的 Crate。
**权限系统**:Tauri v2 引入了精细的权限管理机制,每个 API(如文件系统、网络、剪贴板)都需要在配置中显式声明和授权。
**热重载**:前端开发时支持热重载,提升开发效率。
**自动更新**:内置应用自动更新功能,支持增量更新。
**原生系统集成**:支持系统托盘、通知、原生对话框、剪贴板、系统托盘菜单等。
## 系统要求
开始之前,确保安装了以下依赖:
**Windows**:需要 Visual Studio Build Tools(含 C++ 工具链)和 Rust。
**macOS**:需要 Xcode Command Line Tools 和 Rust。
**Linux**:需要 webkit2gtk 4.1(Ubuntu 22.04+)或 webkit2gtk 4.0(Ubuntu 18.04)。安装方法:
“`bash
# Ubuntu 22.04+
sudo apt update
sudo apt install libwebkit2gtk-4.1-dev \
libssl-dev \
libdbus-1-dev \
libayatana-appindicator3-dev \
librsvg2-dev
“`
## 安装步骤
首先安装 Rust(macOS/Linux):
“`bash
curl –proto ‘=https’ –tlsv1.2 -sSf https://sh.rustup.rs | sh
“`
安装 Tauri CLI:
“`bash
npm install -g @tauri-apps/cli
“`
或者使用 Cargo:
“`bash
cargo install tauri-cli
“`
## 创建第一个 Tauri 应用
使用官方脚手架创建项目:
“`bash
npm create tauri-app@latest my-app
“`
进入项目目录:
“`bash
cd my-app
“`
安装依赖:
“`bash
npm install
“`
启动开发模式:
“`bash
npm run tauri dev
“`
这会打开 Tauri 应用窗口,并在前端代码变更时自动热重载。
## 项目结构
Tauri 项目结构如下:
“`
my-app/
├── src/ # 前端源代码
├── src-tauri/ # Rust 后端代码
│ ├── Cargo.toml
│ ├── tauri.conf.json
│ └── src/
│ └── main.rs
└── package.json
“`
## Rust 后端示例
在 `src-tauri/src/main.rs` 中可以定义 Rust 命令供前端调用:
“`rust
#[tauri::command]
fn greet(name: &str) -> String {
format!(“Hello, {}!”, name)
}
fn main() {
tauri::Builder::default()
.invoke(“greet”, |name| {})
.run(tauri::generate_context!())
.expect(“error while running tauri application”);
}
“`
在前端 TypeScript 中调用:
“`typescript
import { invoke } from “@tauri-apps/api/tauri”;
const greeting = await invoke(“greet”, { name: “World” });
console.log(greeting); // “Hello, World!”
“`
## 构建发布版本
开发完成后,打包应用:
“`bash
npm run tauri build
“`
构建产物位于 `src-tauri/target/release/bundle/` 目录,根据平台不同会生成:
– Windows: .exe 或 .msi 安装包
– macOS: .dmg 或 .app
– Linux: .deb、.AppImage 等
## 应用场景
1. **桌面效率工具**:如笔记应用、文件管理器、系统监控工具
2. **跨平台 GUI 工具**:需要同时支持 Windows/macOS/Linux 的产品
3. **轻量级客户端**:替代 Electron,减少安装包体积和内存占用
4. **嵌入式应用**:Tauri 也支持 Android 和 iOS,可构建移动端应用
5. **游戏辅助工具**:很多游戏工具、辅助软件使用 Tauri 构建
## 开源协议
Tauri 采用 MIT 或 Apache-2.0 许可证开源。
## 相关资源
– 官方文档:https://tauri.app
– GitHub 仓库:https://github.com/tauri-apps/tauri
– Discord 社区:https://discord.gg/tauri
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。











暂无评论内容