前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >扔掉 Electron,拥抱基于 Rust 开发的 Tauri

扔掉 Electron,拥抱基于 Rust 开发的 Tauri

作者头像
闻说社
发布2022-05-07 17:17:44
1.2K0
发布2022-05-07 17:17:44
举报

Tauri 是什么

Tauri 是一个跨平台 GUI 框架,与 Electron 的思想基本类似。Tauri 的前端实现也是基于 Web 系列语言,Tauri 的后端使用 Rust。Tauri 可以创建体积更小、运行更快、更加安全的跨平台桌面应用。

为什么选择 Rust?

Rust 是一门赋予每个人构建可靠且高效软件能力的语言。它在高性能、可靠性、生产力方面表现尤为出色。Rust 速度惊人且内存利用率极高,由于没有运行时和垃圾回收,它能够胜任对性能要求特别高的服务,可以在嵌入式设备上运行,还能轻松和其他语言集成。Rust 丰富的类型系统和所有权模型保证了内存安全和线程安全,让您在编译期就能够消除各种各样的错误。Rust 也拥有出色的文档、友好的编译器和清晰的错误提示信息,还集成了一流的工具——包管理器和构建工具……

基于此,让 Rust 成为不二之选,开发人员可以很容易的使用 Rust 扩展 Tauri 默认的 Api 以实现定制化功能。

Tauri VS Electron

Detail

Tauri

Electron

Installer Size Linux

3.1 MB

52.1 MB

Memory Consumption Linux

180 MB

462 MB

Launch Time Linux

0.39s

0.80s

Interface Service Provider

WRY

Chromium

Backend Binding

Rust

Node.js (ECMAScript)

Underlying Engine

Rust

V8 (C/C++)

FLOSS

Yes

No

Multithreading

Yes

Yes

Bytecode Delivery

Yes

No

Multiple Windows

Yes

Yes

Auto Updater

Yes

Yes

Custom App Icon

Yes

Yes

Windows Binary

Yes

Yes

MacOS Binary

Yes

Yes

Linux Binary

Yes

Yes

iOS Binary

Soon

No

Android Binary

Soon

No

Desktop Tray

Yes

Yes

Sidecar Binaries

Yes

No

环境安装

macOS

由于安装过程比较简单,作者使用的是 macOS,本文只介绍 macOS 安装步骤, Windows 安装步骤可自行查看官网。

1. 确保 Xcode 已经安装

代码语言:javascript
复制
$ xcode-select --install
复制代码

2. Node.js

建议使用 nvm 进行 node 版本管理:

代码语言:javascript
复制
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash
复制代码
代码语言:javascript
复制
$ nvm install node --latest-npm
$ nvm use node
复制代码

强烈推荐安装 Yarn,用来替代 npm。

3.Rust 环境

安装 rustup

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

验证 Rust 是否安装成功:

代码语言:javascript
复制
$ rustc --version

rustc 1.58.1 (db9d1b20b 2022-01-20)
复制代码

tips:如果 rustc 命令执行失败,可以重启一下终端。

至此,Tauri 开发环境已安装完毕。

项目搭建

1.创建一个 Tauri 项目

代码语言:javascript
复制
$ yarn create tauri-app
复制代码
创建 Tauri 项目
创建 Tauri 项目

按一下回车键,继续……

Web 框架选择
Web 框架选择

可以看出,目前主流的 Web 框架 Tauri 都支持, 我们选择 create-vite……

Web 框架选择
Web 框架选择

此处选择 Y,将 @tauri-apps/api 安装进来, 然后选择 vue-ts……

项目创建完成
项目创建完成

检查 Tauri 相关的设置,确保一切就绪……

代码语言:javascript
复制
$ yarn tauri info
复制代码
代码语言:javascript
复制
yarn run v1.22.17
$ tauri info

Operating System - Mac OS, version 12.2.0 X64

Node.js environment
  Node.js - 14.17.0
  @tauri-apps/cli - 1.0.0-rc.2
  @tauri-apps/api - 1.0.0-rc.0

Global packages
  npm - 6.14.13
  pnpm - Not installed
  yarn - 1.22.17

Rust environment
  rustc - 1.58.1
  cargo - 1.58.0

Rust environment
  rustup - 1.24.3
  rustc - 1.58.1
  cargo - 1.58.0
  toolchain - stable-x86_64-apple-darwin

App directory structure
/dist
/node_modules
/public
/src-tauri
/.vscode
/src

App
  tauri.rs - 1.0.0-rc.1
  build-type - bundle
  CSP - default-src 'self'
  distDir - ../dist
  devPath - http://localhost:3000/
  framework - Vue.js
✨  Done in 20.72s.
复制代码

至此,一个新的 Tauri 项目已创建完成。

tips:Tauri 也支持基于已存在的前端项目进行集成,具体流程可查看官网,本文不做介绍。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Tauri 是什么
  • Tauri VS Electron
  • 环境安装
    • macOS
    • 项目搭建
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档