夜雨聆风学习资料网

ARTICLE · 1007401

想把常逛的网站变成桌面 App?这个 14.5k Star 的开源小工具,打包出来不到 5MB

想把常逛的网站变成桌面 App?这个 14.5k Star 的开源小工具,打包出来不到 5MB

想把常逛的网站变成桌面 App?这个 14.5k Star 的开源小工具,打包出来不到 5MB

PakePlus:基于 Rust 的网页打包神器,几分钟把任意网站 / HTML 变成桌面和手机应用

你肯定有那种"天天在浏览器里开着"的网页——内部后台、常看的数据看板、某个顺手的小工具。想给它做个专属桌面端,可一想 Electron 动辄上百 MB、还得配一堆环境,又劝退了。其实有个更轻的法子:PakePlus 能把任意网站、HTML、甚至 Vue / React 项目,打包成一个桌面 App,连手机端都能出。它是基于 Rust + Tauri 2 的开源工具(MIT 协议,GitHub 上 14.5k Star),最戳我的是——云端打包连开发环境都不用装,填个网址就出包。

01它到底是什么来头

PakePlus(别名 PacBao)是一款基于 Rust + Tauri 2 的跨平台打包工具。一句话概括它的活儿:把网页"装进"一个轻量壳里,变成你能双击打开的桌面 App,甚至手机 App。2024 年开源,到现在还在维护;MIT 协议、14.5k Star,社区相当热闹——它的 fork 数尤其夸张(6.8k),原因很实在:云端打包机制要 fork 你自己的仓库去跑自动化,所以爱折腾的人基本人手一份。

02它到底治了什么老毛病

传统路子是 Electron——可它把一整个 Chromium 浏览器塞进包里,动辄上百 MB、启动慢、吃内存,做个小工具根本不值当。也有人自己用 Tauri 写,但得配 Rust 环境、学前端框架,门槛直接劝退。PakePlus 走中间那条:你只管给个网址或一份 HTML,剩下的它全包了。把"网站变 App"这件本来要配环境、写代码的事,压成了一杯咖啡的功夫。

把网站变成 App,难的从来不是"写",是"配环境"。PakePlus 把这道坎儿直接抹平了。

03几个真戳我的点

▍真·轻量:产物 小于 5MB,比 Electron 小约 20 倍——因为它用系统自带的 WebView,不塞 Chromium,体积小、启动还快;

▍多端通吃:Windows / macOS / Linux / Android / iOS 一把梭,连 Windows 7、XP 这种老系统都照顾到了;

▍云端打包零环境:什么开发环境都不想装?开 Web 版填个 GitHub Token,它用 GitHub Actions 自动帮你出各平台包;

▍本地打包也快:嫌 Token 麻烦,本地 30 秒出包,连 Token 都不用;

▍JS 注入:能往页面塞自定义 JavaScript——去广告、改样式、加按钮,老网页也能焕新;

▍高度可定制:图标、应用名、窗口样式随你改,还能用中文名打包,不像有些工具死活只认英文。

04技术底子,摊开来说

它把"打包"这件听起来很硬核的事,拆成几层各管一摊。顺着看下去就明白,为什么它能压到 5MB 内:

▍底层 · Tauri 2 + Rust:打包壳的后端是 Rust,前端渲染用系统原生 WebView(macOS 的 WebKit、Windows 的 WebView2、Linux 的 WebKitGTK)。关键——它不打包 Chromium,网站是直接跑在你系统自带的浏览器内核上,所以体积才能压到 5MB 内、启动飞快;

▍产物本质 · 一个"壳":你打包的不是把网页下载下来,而是做了一个能加载你网址 / HTML 的轻量窗口。线上内容改了,App 不用重发,刷新即更新;

▍云端打包 · GitHub Actions:云端模式会 fork 你的仓库、用你的 Token 触发 GitHub 的自动化流水线,几分钟在 Releases 里吐出各平台安装包,全程不用你本机有开发环境;

▍JS 注入机制:打包时把你的脚本注入页面上下文,等于在网页里多了个"遥控器",能改 DOM、拦请求、去广告,能力完全看你脚本怎么写;

▍本地模式 · 30 秒出包:本地模式走 Rust 工具链直接编译,无需 Token、无需联网 fork,适合想完全离线、数据不出本机的人。

比 Electron 小 20 倍,不是它更"偷工",是它压根没把浏览器塞进去。

05上手拢共三步

▍最省事 · Web 版:浏览器直接开 https://pakeplus.pages.dev,填网址就能打包,什么也不用装;

▍客户端:去 GitHub Releases 下对应系统的安装包双击运行(Windows 还提供免安装绿色版);

▍云端打包:在 GitHub 生成 Personal Access Token(权限开 repo + workflow 即可),PakePlus 用它在你自己的仓库跑 Actions 出包;Token 只存在你本地,不上传第三方;

▍本地打包(开发者):装好 Rust + Node 后,几条命令就够——

pnpm i 装依赖 | pnpm run dev 本地预览调试 | pnpm run build 出包;

▍Mac 排错:若打开报"App 已损坏",终端跑一句放行(把应用名换成你实际的):sudo xattr -r -d com.apple.quarantine /Applications/PakePlus.app

06协议归谁、对谁友好

核心以 MIT 协议开源、代码可审计。这里得如实点一句边界:作者曾因有人滥用它打包违规内容,对部分前端代码做了保留、未完全公开——但打包功能本身完全可用,对普通用户没影响,我们按"以官方为准"标注这一事实。下面几类人尤其适合:

▍想把常逛网页变专属 App 的人:数据看板 / 内部后台 / web 小工具,点一下就能开;

▍有 Vue / React 项目但不想买服务器的人:直接打包成桌面端分发,省一台云主机;

▍想给老网页去广告、加功能的折腾党:JS 注入让老站点焕新;

▍需要老系统 / 移动端的场景:Windows 7、XP 乃至 Android、iOS 客户端都能出;

▍注重隐私的人:数据全在本机、不上传,云端打包也只是用你自己仓库的 Actions。

END

说到底,PakePlus 解决的是"我想有个 App,但不想为它配一整套开发环境"这种小需求。以前要么忍了在浏览器里开,要么硬着头皮学 Electron;现在给个网址,几分钟拿下一个不到 5MB 的专属应用。对于手边一堆"其实就想点一下就能开"的网页的人来说,这种轻量打包,挺香。

想上手的朋友,链接都撂这了:

GitHub官网Web 版

https://github.com/Sjj1024/PakePlus
https://pakeplus.com

https://pakeplus.netlify.app/

相关学习资料