我在参与维护 webcatalog,一个可以把网页版应用变成桌面 APP 的工具。我自己目前用它来加载本地服务器启动的网页版 TiddlyWiki,也就是本来纯网页版的工具,可以用它一键打包成可分发的 APP 。
我用这个而不是自己用 Electron 包装,是因为我不想处理打包、签名、右键菜单等等一大堆琐事。

除了可以打包成桌面 APP 以外,它还可以提供一些自定义的 NodeJS API (通过 PreloadScript),这样可能公司内网自己开发的纯网页 SaaS 也可以通过它来做一些 RPA (按键精灵)的功能了。
我还利用 PreloadScript 在 APP 启动时自动启动 TiddlyWiki 的本地服务器,监听 xxxx 端口,然后这个桌面 APP 打开 xxxx 端口,就能把本来需要通过命令行启动的 web app 打包成了一键启动的、能放到 Dock 里的 APP 了。
那么问题来了,
除了让用户自定义 PreloadScript 以外,我还想加一些预制的 API,来方便有需要的人快速开发有 NodeJS 能力的纯网页版 SaaS,比如把以下这两个功能暴露到 window.webcatalog 上:
- 添加自定义右键菜单项
- 控制鼠标移动、键盘输入
我想征集一下大家觉得可以加哪些 API 进去?