Tauri:rust前端框架,平替electron

前端潮流速递 : Electron的平替Tauri

经常写Electron的朋友肯定知道 , 随便写点东西打包之后非常的大,并且每个窗口都是一个新的进程,占据大量内存,即使特点也是诟病.

所以由Rust语言实现的Tauri 于 2022 年 6 月发布了

Tauri 的前端实现也是基于 Web 系列语言,

Tauri 的后端使用 Rust。Tauri 可以创建体积更小、运行更快、更加安全的跨平台桌面应用。

Electron 和 Tauri 之间的一些主要区别:

  1. 底层技术:

    • Electron: 使用 Chromium 作为底层渲染引擎,这是一个完整的浏览器引擎。这使得 Electron 具有强大的 Web 技术支持,但也导致了较大的二进制文件和较高的资源占用。

    • Tauri: 使用 Web 技术(通常是基于 Rust 的 WebView 组件)来构建用户界面,而不依赖完整的浏览器引擎。这可以减小应用的体积,并且在资源使用上相对较轻量。

  2. 语言:

    • Electron: 使用 JavaScript、HTML 和 CSS 进行应用程序的开发。主要的开发语言是 JavaScript。

    • Tauri: 允许使用多种语言,但其核心是用 Rust 编写的,开发者可以使用任何与 Rust 集成良好的语言(如 JavaScript、TypeScript、Python 等)来构建应用。

  3. 性能和资源占用:

    • Electron: 由于包含完整的浏览器引擎,可能在性能和资源占用方面较大。启动时间和内存占用可能相对较高。

    • Tauri: 由于采用了轻量级的 WebView 组件,Tauri 的性能和资源占用通常较为轻量。

  4. 构建和打包:

    • Electron: Electron 提供了一套完整的开发工具和打包工具,使得构建和打包相对简单。

    • Tauri: Tauri 通过使用 Rust 的工具链和一些辅助工具来构建和打包应用。这可能对不熟悉 Rust 的开发者来说有一些学习曲线。

  5. 生态系统:

    • Electron: 有一个庞大的社区和生态系统,丰富的插件和工具可以用于增强 Electron 应用的功能。

    • Tauri: Tauri 目前相对较新,社区和插件生态系统相对较小。这可能会在一些功能需求上受到限制。

  6. 目标用户群:

    • Electron: 适用于那些对于使用完整的浏览器引擎的 Web 技术有需求的应用。

    • Tauri: 更适用于对于性能和资源占用有较高要求、以及对 Rust 或其他编程语言有兴趣的开发者。

开始使用

预先准备

首先您需要安装 Rust 及其他系统依赖。请记住,只有在开发 Tauri 应用时才需要此设置。您程序的用户不需要进行下列操作。

Windows 中

  1. Microsoft Visual Studio C++ 生成工具

需要安装 Microsoft C++ 生成工具。最简单的方法是下载Visual Studio 2022 生成工具。

进行安装选择时,请勾选 "C++ 生成工具" 和 Windows 10 SDK。

  1. WebView2

Tauri 需要 WebView2 才能在 Windows 上呈现网页内容,所以您必须先安装 WebView2。最简单的方法是从微软网站下载和运行常青版引导程序。

安装脚本会自动为您下载适合您架构的版本。不过,如果您遇到问题 (特别是 Windows on ARM),您可以自己手动选择正确版本。

  1. Rust

最后,请前往 https://www.rust-lang.org/zh-CN/tools/install 来安装 rustup (Rust 安装程序)。请注意,为了使更改生效,您必须重新启动终端,在某些情况下需要重新启动 Windows 本身。

或者,您可以在 PowerShell 中使用 winget 命令安装程序:

复制代码
winget install --id Rustlang.Rustup

MacOS中

  1. CLang 和 macOS 开发依赖项

您将需要安装 CLang 和 macOS 开发依赖项。为此,您需要在终端中执行以下命令:

复制代码
xcode-select --install
  1. Rust

要在 macOS 上安装 Rust,请打开终端并输入以下命令:

复制代码
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

快速开始

Tauri 兼容绝大多数前端工具栈

官方文档推荐使用 `create-tauri-app`脚手架来创建 Tauri 项目,它支持原生 HMTL/CSS/Javascript,也支持其他前端框架,如 React、Vue、Svelte。

文档推荐使用 Vite 来构建前端应用。

复制代码
yarn create tauri-app 

创建的过程中,会提示输入项目名和选择一个包管理工具,其中 cargo 是 rust 的包管理工具,我们选择自己熟悉的即可:

接着是选择一个 UI 模板,这里我们选择使用 react:

安装好依赖后,启动项目:

复制代码
yarn tauri dev 

之后就是开发了 页面基本和开发vue一样没区别

打包应用只需要运行 build 命令即可:

复制代码
yarn tauri build 
相关推荐
LinXunFeng2 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
闪闪发亮的小星星6 天前
高斯光以及高斯光公式解释
笔记
cqbzcsq6 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
阿米亚波6 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
自传.7 天前
尚硅谷 Vibe Coding|第三章(1) Claude Code深度使用与进阶技巧 学习笔记
笔记·学习·尚硅谷·vibecoding
.千余7 天前
【C++】模板进阶全解:非类型参数|全特化|偏特化|分离编译完全指南
开发语言·c++·笔记·学习·其他
自传.7 天前
尚硅谷 Vibe Coding|第二章 AI编程工具生态 学习笔记
笔记·学习·ai编程·尚硅谷·vibe coding
秋波。未央7 天前
Java Agent 开发 · Day 1 学习笔记(含作业完整标准答案)
java·笔记·学习
中屹指纹浏览器7 天前
2026指纹浏览器字体指纹、字体渲染偏差检测与全维度虚拟字体池搭建方案
经验分享·笔记