Rust 做桌面应用这么轻松?Pake 彻底改变你的开发方式

Rust 做桌面应用这么轻松?Pake 彻底改变你的开发方式

网页应用装不下了?别担心,Pake 用 Rust 帮你打包网页,快速搞定桌面应用。比起动不动就 100M+ 的 Electron 应用,它轻如鸿毛,功能却一点都不少!本文将带你了解 Pake 的核心亮点、如何快速上手,以及它是如何为你省下宝贵硬盘空间的。

软件简介

Pake 是一款基于 Rust 构建的轻量级工具,它能将任何网页打包成跨平台的桌面应用。无论你是用 Mac、Windows 还是 Linux,都可以轻松生成本地应用,特别适合那些想要独立运行常用网页应用的用户。

它相较于传统的 JavaScript 框架,资源占用极少,仅 5M 左右,相当于把 Electron 的肥胖问题直接解决了。Pake 的目标就是让网页桌面化变得快速又简单,适用于日常办公、个人工具管理等场景。

 

ff4c7df40a612c2f3ac44d9b392d3b20.png

软件特点

Pake 的特色功能简洁高效,完全满足小工具爱好者的需求:

  • • 超轻量:打包出来的应用大小仅为 Electron 应用的 1/20,体积仅约 5M,简直就是空间管理强迫症患者的福音。

  •  

    aa716752c4cc77c4cb3bdca152f66b2b.png

  • • 高速启动:得益于 Rust 和 Tauri 的强大性能,Pake 打包的应用启动速度超快,秒开无压力。

  • • 简单易用:内置各种实用功能,如快捷键传递、无边框窗口,支持自定义配置,甚至能调皮地隐藏标题栏。

  •  

    8c40101db029ed1c04117f7d9d02efc7.png

安装与使用

上手 Pake 简单到不需要太多前端开发经验。你只需用几条命令,就能把网页打包成你想要的桌面应用:

# 使用 npm 安装 Pake 命令行工具
npm install -g pake-cli# 将网页打包为桌面应用
pake https://example.com --name MyApp --hide-title-bar

想要打包的应用不止一个?没问题!Pake 已经打包好了各种热门应用,比如微信读书、ChatGPT、YouTube 等,支持多平台下载。你只需要去 GitHub Releases 页面 下载即可,甚至连动手打包都省了。

技术架构

Pake 基于 Rust 和 Tauri 构建,具有以下技术优势:

  • • 高性能:得益于 Rust 的低开销,Pake 不会像 Electron 那样占用大量系统资源,能够平稳运行各种网页应用。

  • • 高定制性:你可以根据自己的需求修改应用的窗口尺寸、图标、是否全屏、可否调整窗口大小等配置,甚至还能隐藏标题栏,打造极简主义风格。

  • • 丰富扩展:Pake 支持高级用法,例如重写网页样式、去除广告、注入 JavaScript,以及自定义快捷键等,开发者可以尽情玩转。

部署与开发

对于开发者而言,Pake 也是一个友好的工具。你只需确保系统上安装了 Rust 和 Node.js,并按照以下步骤进行操作即可:

# 安装依赖
npm i# 本地开发调试
npm run dev# 打包应用
npm run build

你可以通过编辑 src-tauri 目录下的 pake.json 文件,自定义应用的名称、图标等信息,让应用更加贴合你的使用习惯。对于高级用户,Pake 提供了更灵活的配置选项,可以进一步定制窗口的各种属性。

产品图片

cf4e0f869fa34c818b20bb1a23e24ae2.png

 

GitHub 地址

https://github.com/tw93/Pake

如果你觉得这个项目不错,欢迎给个 Star!顺便支持下开发者养猫的愿望吧 🐱!

结语

Pake 是一款小巧但功能强大的桌面应用打包工具。通过极简的操作流程和 Rust 带来的高效性能,它帮助开发者和用户们轻松创建各种网页的桌面版。无论你是想要独立运行常用网页应用,还是希望在工作中提升效率,Pake 都是一个值得一试的选择。

推荐阅读

  • • Gin-vue-admin:全栈开发神器

  • • LG-SOAR:翱翔吧,开发者的利器


欢迎关注我的公众号“前端新视野brizer”,原创技术文,开源好工具第一时间推送。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/439062.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript 数组方法

数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表示。两端的方括号是数组的标志。 var a["a","b","c"]; 除了在定义时赋值,数组也可以先定义后赋值。 var arr[];arr[1]"a"…

数据流和数据流处理技术

一数据流 首先明确数据流概念:数据流是连续不断生成的、快速变化的无界数据序列 数据流类型: 数据流大致可以分为四种类型 1.连续型数据流:不断地产生数据,数据稳定速度输入系统。 2.突发型数据流:在某特定时间或…

【通配符】粗浅学习

1 背景说明 首先要注意,通配符中的符号和正则表达式中的特殊符号具备不同的匹配意义,例如:*在正则表达式中表示里面是指匹配前面的子表达式0次或者多次,而在通配符领域则是表示代表0个到无穷个任意字符。 此外,要注意…

IDEA 配置 Git 详解

本文将介绍在IntelliJ IDEA 中如何配置Git 没有安装配置 Git 的可以参考我的这篇文章:安装配置 Git 一、操作环境及准备 1.win 10 2.已安装且配置了Git 3.有Gitee账户 4.安装了IntelliJ IDEA 2023.2.1 5.全程联网 二、配置步骤 2.1 配置git 1.采用全局设置&…

基于SpringBoot+Vue+MySQL的装修公司管理系统

系统展示 管理员后台界面 员工后台界面 系统背景 随着信息技术的快速发展,装修行业正面临数字化转型的关键时刻。传统的装修管理方式存在信息管理混乱、出错率高、信息安全性差等问题,已无法满足现代市场的需求。因此,开发一套高效、便捷的装…

Gaussian-splatting 项目环境配置笔记(Win11)

如果你是配置别的项目的过程中用到了3D GS相关的内容,然后这部分内容环境一直配不好,也可以跟随这个博客配一下环境,配完后起码3D GS部分就搞定了。 文章目录 概述项目链接:VS2019直接下载链接CUDA不同版本下载链接安装Condasetup…

谷歌收录批量查询,谷歌收录批量查询的简单方法

谷歌收录批量查询是网站管理员和SEO优化人员常见的需求,以下提供几种简单且高效的批量查询方法: 一、使用Google Search Console(谷歌搜索控制台) 注册并验证网站: 首先,确保你已经在Google Search Conso…

【JVM】垃圾释放方式:标记-清除、复制算法、标记-整理、分代回收

文章目录 1. 标记-清除2. 复制算法4. 标记-整理4. 分代回收 把标记为垃圾的对象的内存空间进行释放。主要有三种释放方式 1. 标记-清除 把标记为垃圾的对象,直接释放掉(最朴素的做法) 此时就是把标记为垃圾的对象所对应的内存空间直接释放。…

Visual Studio C# 处理和修复 WinRiver II 测量项目 MMT 文件错误

Visual Studio C# 处理和修复 WinRiver II 测量项目 MMT 文件错误 前言一、WinRiver II 测量项目 MMT 文件的结构二、WinRiver II 无法打开或操作测量项目 MMT 文件2.1 无法载入船测多线法测量文件2.2 可以载入测验项目 MMT 文件,但 ADCP 后处理软件无法写入信息2.3…

【数学分析笔记】第4章第4节 复合函数求导法则及其应用(2)

4. 微分 4.4 复合函数求导法则及其应用 【例4.4.3】 y e 1 cos ⁡ x ye^{\sqrt{1\cos x}} ye1cosx ​,求 y ′ y y′ 【解】 y ′ e 1 cos ⁡ x ⋅ 1 2 1 cos ⁡ x ⋅ ( − sin ⁡ x ) − sin ⁡ x 2 1 cos ⁡ x e 1 cos ⁡ x ye^{\sqrt{1\cos x}}\cdot\f…

JavaScript 中最快的循环是什么?

无论使用哪种编程语言,循环都是一种内置功能。JavaScript 也不例外,它提供了多种实现循环的方法,偶尔会给开发人员带来困惑:哪一种循环才是最快的? 以下是Javascript中可以实现循环的方法: For Loop While …

Pikachu- Over Permission-垂直越权

以admin 账号登陆,添加一个用户; 把添加用户的这个请求发送到 repeater; 退出admin,使用普通用户pikachu登陆; 只有查看权限; 使用pikachu 用户的认证信息,替换repeater处管理员创建用户请求的…

0基础学前端 day6 -- 搭建github pages静态网址

标题:如何通过 GitHub Pages 创建一个静态网站 GitHub Pages 是 GitHub 提供的一项免费服务,允许用户从 GitHub 仓库中托管静态网站。对于开发者和非开发者来说,这都是一个极其便利的工具,用于创建和发布个人博客、项目文档或作品…

Redis中GEO数据结构实现附近商户搜索

Redis的版本必须是6.2以上 在测试类中将数据导入Redis Testvoid loadShopData(){//1.查询店铺信息List<Shop> list shopService.list();//2.把店铺分组&#xff0c;按照typeId分组&#xff0c;typeId一致的放到一个集合Map<Long, List<Shop>> map list.s…

在vscode在使用idea编辑器的快捷键

在vscode在使用idea编辑器的快捷键 在vscode扩展在搜索idea key结果如下&#xff1a; 选择IntelliJ IDEA Keybindings安装&#xff08;注意作者是Keisuke Kato&#xff09;&#xff0c;安装后就可以在vscode编辑器中使用idea编辑器的快捷键。

五子棋双人对战项目(2)——登录模块

目录 一、数据库模块 1、创建数据库 2、使用MyBatis连接并操作数据库 编写后端数据库代码 二、约定前后端交互接口 三、后端代码编写 文件路径如下&#xff1a; UserAPI&#xff1a; UserMapper&#xff1a; 四、前端代码 登录页面 login.html&#xff1a; 注册页面…

ZenStack全栈开发工具(一)快速使用指南

简介 ZenStack是一个TypeScript工具&#xff0c;通过灵活的授权和自动生成的类型安全的 API/钩子来增强 Prisma ORM&#xff0c;从而简化全栈开发 数据库-》应用接口 数据库-》前端 参考官方网站&#xff1a;https://zenstack.dev/ 如果我们想做一个全栈开发的web应用程序&am…

记一次教学版内网渗透流程

信息收集 如果觉得文章写的不错可以共同交流 http://aertyxqdp1.target.yijinglab.com/dirsearch dirsearch -u "http://aertyxqdp1.target.yijinglab.com/"发现 http://aertyxqdp1.target.yijinglab.com/joomla/http://aertyxqdp1.target.yijinglab.com/phpMyA…

算法笔记(九)——栈

文章目录 删除字符串中的所有相邻重复项比较含退格的字符串基本计算机II字符串解码验证栈序列 栈是一种先进后出的数据结构&#xff0c;其操作主要有 进栈、压栈&#xff08;Push&#xff09; 出栈&#xff08;Pop&#xff09; 常见的使用栈的算法题 中缀转后缀逆波兰表达式求…

大学生就业市场:Spring Boot招聘系统的设计与实现

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式&#xff0c;是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示&#xff1a; 图4-1系统工作原理…