基于Rust开发的Tauri使用Web前端构建更小、更快、更安全的桌面应用程序(IOS与安卓即将来临)。1.0稳定版正式发布!!!比Electron更优秀!
Tauri是一个用于为所有主要桌面平台构建极小、极快二进制文件的框架。 开发人员可以集成任何可编译HTML、JS和CSS的前端框架来构建他们的用户界面及应用。 应用程序后端是一个来自Rust带有一个前端可以与之交互的API二进制文件。
支持平台
- Windows 7,8,10
- Linux
- macOS
- iOS (开发中)
- android (即将来临)
应用程序包
- 应用图标
- 构建于MacOS (.app, .dmg)
- 构建于Linux (.deb, AppImage)
- 构建于Windows (.exe, .msi)
- 复制缓冲区
- 设备通知 (toast)
- 自动更新
- 应用程序签署
- 无框模式
- 透明模式
- 多窗口模式
- Tray
- deeplink RPC (开发中)
- 一次性命令 (即将来临)
安全特色
- 本地主机 ()
- 自定义协议的安全模式
- 动态提前编译 (dAoT) 与功能性 tree-shaking
- 功能地址空间布局随机化
- 在运行时对函数名称和消息进行OTP加盐(OTP salting)
- CSP 注入
实用程序
- 用于为所有平台创建二进制文件的GH操作
- VS code扩展
- Tauri核心插件
- 命令行自动更新核心依赖项
- 基于Rust的CLI
Tauri 对比 Electron
详情信息 | Tauri | Electron |
Linux安装包尺寸 | 3.1 MB | 52.1 MB |
Memory Consumption Linux | 180 MB | 462 MB |
Linux内存消耗 | 0.39s | 0.80s |
界面服务提供 | WRY | Chromium |
后端 | Rust | Node.js (ECMAScript) |
底层引擎 | Rust | V8 (C/C++) |
FLOSS | 是 | 否 |
多线程 | 是 | 是 |
字节码交付 | 是 | 否 |
多窗口 | 是 | 是 |
自动更新 | 是 | 是(看以下备注1) |
自定义应用图标 | 是 | 是 |
Windows Binary | 是 | 是 |
MacOS Binary | 是 | 是 |
Linux Binary | 是 | 是 |
iOS Binary | 快了 | 否 |
Android Binary | 快了 | 否 |
Desktop Tray | 是 | 是 |
Sidecar Binaries | 是 | 否 |
备注
文档地址:https://github.com/tauri-apps/tauri-docs
测试与调整
- Rust (cargo test) => sourced via inline #[cfg(test)] declarations
- TS (jest) => 通过规范文件
- Smoke Tests (在合并到最新版本时运行)
- eslint, clippy
CI/CD
通过CI/CD方式开发最有效,推荐Buddy作为开发CI/CD:请点击此处查看使用详情>>>
项目开源地址:https://github.com/tauri-apps/tauri
官网地址:https://tauri.app