用途:指导用 Rust 开发跨平台桌面应用,重点覆盖 Tauri 与原生 GUI 两条路线。Tauri 适合具备 Web 前端技能(React/Vue/Svelte)的团队,用 Rust 处理后端与系统级操作;原生框架适合纯 Rust 项目。
主要能力:框架选型决策;Tauri 项目初始化与命令定义(#[tauri::command]);类型安全 IPC(serde,前端经 invoke() 调用后端);状态管理(Arc<Mutex> 或通道);Tokio 异步集成;文件系统、系统托盘、通知、自动更新、深链接等平台集成;多窗口状态共享与持久化;测试与跨平台构建分发。原生框架分别面向即时模式工具(egui)、Elm 式响应架构(iced)、声明式与嵌入式 UI(slint)、数据驱动(druid)。
使用方式:安装与创建项目命令为 cargo install tauri-cli、cargo create-tauri-app my-app、cargo new my-app 配合 cargo add eframe egui;开发与打包用 cargo tauri dev、cargo tauri build,跨平台可结合 GitHub Actions 矩阵构建。原则是前后端职责分离,业务逻辑放在 Rust 后端,前端只处理 UI,不绕过 IPC 直接访问文件系统;IPC 输入需校验,配置 CSP,避免阻塞主线程。
适用场景:Electron 替代、开发者工具与效率应用、需原生集成系统工具、实时音视频或游戏类应用、嵌入式 GUI 等。不适用:简单 Web 应用、移动优先项目、纯 CLI 工具、浏览器扩展、快速原型,以及团队缺乏 Rust 经验的场景。
限制:资料未提供具体收费、价格与官方支持信息;性能数字、示例项目与集成技能均为资料所述,未在本条目中独立验证;未提供完整配置与代码示例。