2022-10-16 08:32:54 +08:00
2022-10-14 22:00:16 +08:00
2022-10-15 18:19:39 +08:00
2022-10-15 11:46:04 +08:00
🎉 init
2022-10-14 17:34:22 +08:00
2022-10-16 08:32:54 +08:00

Pake

用 Rust 来打包你的 App底层使用 Tauri当前支持微信读书、Flomo、Vercel有更多想法欢迎提 Issue。

特征

🏂 :相比传统的 electron 套壳打包,大小要小数十倍,一般 2M 大小
😂 Pake 的底层使用的 Rust Tauri 框架,性能体验较 JS 框架要轻快不少
🩴 :不是单纯打包,实现了通用快捷键的透传、沉浸式的窗口、拖动、打包样式兼容
🤱🏻 :只是一个玩具,或者说一个用 Rust 替代之前老思路的玩法,欢迎交流

效果

微信读书

下载地址:https://tw93.fun/images/app/WeRead.dmg

1

Flomo

下载地址:https://tw93.fun/images/app/Flomo.dmg

2

Vercel

下载地址:https://tw93.fun/images/app/Vercel.dmg

3

开发

开始前参考 tauri 快速配置好环境

// 安装依赖
npm i

// 调试
npm run dev

// 打包
npm run build

打新包

  1. 修改 src-tauri 目录下的 tauri.conf.json 中的 productName、icon、title、identifier 这 4 个字段,其中 icon 可以去 macosicons 下载并放到 icons 目录下即可
  2. 修改 src-tauri/src 目录下的 main.rs 中的 with_url 字段为你需要打包网页的地址
  3. npm run dev 本地调试看看效果,此外可以打开 main.rs 中 111、116 行 devtools 注释进行容器调试
  4. npm run build 运行即可打包,假如有打开 devtools 模式,记得注释掉

高级

  1. 如何改写样式,如去掉原站广告、不想要的模块、甚至重新设计?

    1. 首先需要打开 devtools 调试模式,找到你需要修改的样式名称,先在 devtools 里面验证效果
    2. 找到 main.rs 中42行左右地方将需要覆盖的样式加上即可有一些案例你可以模仿
    3. 正式打包前记得干掉 devtools 注释
  2. 如何进行容器内的事件和 Pake 通信,比如说 Web 的拖拽、滚动、特殊点击传递啥的?

    1. 和上面1案例中准备工作一致
    2. 参考 main.rs 中 88 行左右位置,写好事件监听,然后用 window.ipc.postMessage将事件以及参数传递出来
    3. 然后参考 115 行左右,接收事件,自己处理即可,更多可以参考 tauri 以及 wry 的官方文档

最后

  1. 希望玩的过程中有一种学习新技术的喜悦感,如果有新点子欢迎告诉我~
Description
No description provided
Readme MIT 52 MiB
Languages
Rust 91.5%
Dockerfile 8.5%