选项 1:Electron(以前称为 atom-shell)
这是 GitHub 的Atom和 Microsoft 的代码编辑器使用的外壳。它与 node-webkit 非常相似,但它会首先运行脚本,并且您必须为用户创建一个视图/窗口。还有一些其他的细微差别,但值得一看。
选项 2:NW.js以前是 node-webkit
要点是它基本上扩展了 JavaScript 引擎,让您编写支持Node.js扩展对象模型和module的基于 Web 的应用程序……然后将package.json start.htmlmodule和 JavaScript 文件打包成 ZIP文件(带有 .nw 扩展名)并使用 nw(.exe) 运行它。有 Windows、Mac 和 Linux 版本可用。
选项 3:Neutralinojs Github
Neutralinojs 是一个轻量级、便携的桌面应用程序开发框架。它允许您使用 JavaScript、HTML 和 CSS 开发轻量级跨平台桌面应用程序。您可以使用任何编程语言(通过扩展 IPC)扩展 Neutralinojs,并将 Neutralinojs 用作任何源文件的一部分(通过子进程 IPC)。
选项 4:MacGapNode(仅限OS X )
MacGap 与 Node.js 集成(它似乎变得陈旧)
选项 5:Tauri Github
Tauri 是一个工具包,可帮助开发人员为主要桌面平台开发应用程序——几乎可以使用任何现有的前端框架。核心是用 Rust 构建的,CLI 利用 Node.js 使 Tauri 成为一种真正的多语言方法来创建和维护优秀的应用程序。
旁白:服务...
我不能说 OS X 作为 .App,但很有可能在 Node.js 中创建后台服务安装和桌面上“本地”站点的链接。大多数浏览器都有不显示所有功能的选项(我知道 Firefox 尤其如此)。
我知道您的问题特别针对 OS X,但在 Windows 中,您可以使用 NSSM 将任何东西作为服务运行,我已经将它用于 Windows 中基于 Node.js 的服务。我认为上面的一些其他选项更好,具体取决于您的需求。
删除:
本回答为多题复制,这些参考多为更新方便。