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 
相关推荐
Wanderer X35 分钟前
MiniMax-H3(ref2va)架构与推理方法笔记
笔记
深圳老胡41 分钟前
STM32C562RET6 外部中断详解:从 EXTI 原理到 GPIO 外部中断实战
笔记·stm32·单片机·代码规范·1024程序员节
海绵宝宝转agent1 小时前
leetcodehot100个人题解
java·笔记·学习·算法
李某学编程15 小时前
基于ARM的微机原理学习笔记(一)
arm开发·笔记·学习
sbjdhjd16 小时前
AI产业周度动态:从“更强模型”走向“可执行、可治理、可计价”的系统竞争 (2026年10月19日—10月25日)
人工智能·笔记·ai·开源·gemini·信息差·claude code
ss27317 小时前
AI时代首先数据库-PostgreSQL实战笔记 27 PostgreSQL数据写入与读取流程解析
数据库·笔记·postgresql
深圳老胡18 小时前
压力检测空吸功能硬件方案全解析:主流压力传感器品牌与实现路径
笔记·单片机·代码规范
程序猿追18 小时前
返回 null 不一定入队成功:鸿蒙 KMP上的并发优先队列观察笔记
笔记·华为·harmonyos·kmp
崔高杰19 小时前
【多论文阅读笔记】下一阶段,Agent记忆关注什么能力?
论文阅读·笔记
ms72wx19 小时前
Docker 命令学习笔记:从入门到进阶的实战指南
笔记·学习·docker