Web前端开发网

fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 广告合作
  • 赞助一下
  • 关于我们
资源推荐
阿里云优惠券
卓越的云计算技术和服务提供商
腾讯云优惠券
云服务器,云数据库,CDN,域名注册等多种云计算服务
扣子Coze
创建属于你的 AI 应用,AI Agent智能办公平台
豆包AI
字节跳动旗下 AI 智能助手
即梦AI
一站式智能创作平台,即刻造梦
AiPPT
全智能AI一键生成 PPT
堆友AI
零门槛,多风格AI绘画免费生成,电商海报设计神器
蜂小推
不扣量的项目推广平台
SpeedAI
一键去重、降AIGC率、数据可视化、论文写作

资源分类

AI智能 酷站推荐 招聘/兼职 框架/库 模块/管理 移动端UI框架 Web-UI框架 Js插件 Jquery插件 CSS相关 IDE环境 在线工具 图形动效 游戏框架 node相关 调试/测试 在线学习 社区/论坛 博客/团队 前端素材 图标/图库 建站资源 设计/灵感 IT资讯
网站收录 / 问题反馈

Tauri

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

网站地址:https://tauri.app/
GitHub:https://github.com/tauri-apps/tauri
网站描述:使用Web前端构建更小,更快,更安全的桌面应用
访问官网
GitHub

tauri并非前端框架,而是一个rust框架。所以,要使用这个框架,还需要懂一定的rust开发。当然,如果你只需要将纯前端的代码进行打包,完全可以使用这个框架。



简介

Tauri 是一个框架,用于为所有主要桌面平台构建小巧、快速的二进制文件。开发人员可以集成任何可编译为 html、JS 和 css 的前端框架,以构建他们的用户界面。应用程序的后端是一个基于 Rust 的二进制文件,带有一个前端可以与之交互的 api。

Tauri 应用程序的用户界面目前在 macOS 和 Windows 上利用 tao 作为窗口处理库,在 Linux 上通过 Tauri 团队孵化和维护的 WRY 利用 WebKit、Windows上的 WebView2 和 Linux 上的 WebKitGTK 创建一个统一的系统 webview(和其他好东西,如菜单和任务栏)接口。


特性:

  • 无本地主机
  • 安全模式的自定义协议
  • 动态超前编译(dAoT)与功能树摇动
  • 功能性地址空间布局随机化
  • 运行时对函数名和信息进行 OTP salting
  • CSP 注入

为什么使用 tauri

  • 原始Tauri应用程序的打包大小小于3 MB,比Electron的大小小140 MB。
  • 内存占用小于使用相同代码库构建的Electron应用程序的大小的一半。
  • 安全是Tauri的头等大事,我们正在不断创新。
  • 遗憾的是,底层是 Chromium 的使用者(例如Electron)无法获得 FLOSS(自由/开源软件) 许可。


技术细节

tauri 具有五个主要组成部分:

  • 用于创建,开发和构建应用程序的Node.js CLI
  • Rust Core,用于绑定到底层WEBVIEW并提供可摇树优化的API
  • Rust Bundler用于制造最终的二进制文件
  • Webview的Rust绑定
  • Webview低层库,用于创建和与操作系统“本机” Webview交互

Tauri应用程序中的用户界面目前在macOS上使用Cocoa / WebKit,在Linux上使用gtk-webkit2,在Windows上通过Edge使用MSHTML(IE10 / 11)或Webkit。 Tauri基于MIT许可的进行工作,即webview。


tauri 与 electron 的对比

TauriElectron
MacOS 的包大小0.6 MB47.7 MB
MacOS 的内存消耗13 MB34.1 MB
接口服务提供VariesChromium
后台绑定RustNode.js (ECMAScript)
底层引擎C/C++V8 (C/C++)
自由/开源软件YesNo
多线程YesNo
字节码传递YesNo
可以显示PDFYesNo
多窗口SoonYes
GPU 访问YesYes
自动更新SoonYes (1)
跨平台YesYes
自定义 APP 图标YesYes
Windows 包YesYes
MacOS 包YesYes
Linux 包YesYes
iOS 包SoonNo
Android 包SoonNo
支持本地 web 服务YesYes
没有本地服务选项YesNo
桌面文件盒SoonNo

Notes

  1. Electron在Linux上没有本地自动更新程序,但由electron-packager提供

环境搭建

以下为 macOS 为例子, Tauri是一个多语言系统,因此需要大量工具。

系统依赖项:

$ brew install gcc

使用 brew 下载 gcc 依赖

node 运行环境:

此框架的运行需要 node 12 以上的环境:

nvm install 12
nvm use 12

使用 nvm 下载 node 12

Rustc and Cargo 包管理

$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

这条命令时需要梯子才能下好的
下载的时候一路回车即可
完成后,关闭终端,打开后查看

grewer@Grewer-2 ~ % rustc --version
rustc 1.42.0 (b8cedc004 2020-03-09)

Tauri 打包工具

$ cargo install tauri-bundler --force

此命令的下载也建议使用梯子,不然会比较慢

至此, 此框架的基础环境都已经搭建完成


使用(无缝融合进现有的项目)

首先你需要一个 web 项目, 可以是 react-create-app 或者 vue-cli 创建的项目,也可以是任意的 web 项目

在项目中下载 tauri:

yarn add tauri
# 或者
npm install tauri

下载完成后,在当前项目的目录下,使用命令

tauri init

之后, 你的项目下会出现一个目录 src-tauri,再根据你的 web 项目启动时的端口修改文件 src-tauri/tauri.conf.json:

 "build": {
    "distDir": "../build", //打包后的路径
    "devPath": "http://localhost:8080", // 此为 dev 启动时的url
    "beforeDevCommand": "",
    "beforeBuildCommand": ""
  },

现在启动项目:

"dev": "tauri dev",

第一次启动的时候会有点慢,要加载一些东西,后面就快了很多了。


仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://fly63.com/nav/3595

更多»
热门资源
bootstrap
最流行的HTML,CSS和JavaScript框架,用于开发响应式,移动端先行的web项目
官网
GitHub
Materialize
基于Material Design的现代响应式前端框架
官网
GitHub
Element UI
一套基于 Vue 2.0 的桌面端组件库
官网
GitHub
Material Design(MDB)
领先的Bootstrap UI套件之一
点击进入
Muse-UI
基于 Vue2.0 的 Material Design UI 库
官网
GitHub
sb-admin
基于Bootstrap简约美观的后台管理模板
官网
GitHub
Magic UI
为设计工程师打造的UI库
官网
GitHub
Vue-Access-Control
Vue权限管理解决方案
官网
GitHub
RmlUI
桌面端GUI开发框架
官网
GitHub
HeroUI
基于TailwindCSS构建的React 现代UI框架
官网
GitHub
tweakcn
shadcn/ui组件可视化无代码编辑器
官网
GitHub
kitty-ui
基于 Vue + Element 实现的权限管理系统
点击进入
GitHub
类似于Tauri的资源
bootstrap
最流行的HTML,CSS和JavaScript框架,用于开发响应式,移动端先行的web项目
官网
GitHub
Atui
阿里通讯前端部推出的一个基于 Vue.js 2.0 的 UI 组件库
官网
GitHub
Ant Design
是一个致力于提升『用户』和『设计者』使用体验的中台设计语言
官网
GitHub
Radix UI
一个轻量级的开源组件库
官网
GitHub
awesome-react-components
React 组件/库集合
点击进入
GitHub
Arco Design
基于 Arco Design 的 React UI 组件库
官网
GitHub
sing-app
Bootstrap 4构建的免费和开源管理仪表板模板
官网
GitHub
Element UI
一套基于 Vue 2.0 的桌面端组件库
官网
GitHub
目录

手机扫一扫预览

》
分享组件加载中...
首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架 实用工具箱 广告合作 关于我们

Copyright © 2018 Web前端开发网提供免费在线工具、编程学习资源(教程/框架/库),内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。