在刚刚发布的 2018 JavaScript 现状调查报告中,可能有人注意到里面提到了一个新的 Headful Node 应用框架 —— Carlo 。Carlo 是 Google Labs 近日推出的一个开源项目,官方将其描述为 “ Node 应用 Web 渲染界面”。
Carlo 为 Node 应用提供 Chrome 渲染功能,使用 Puppeteer 项目与本地安装的浏览器实例进行通信,并实现远程调用基础架构,以便在 Node 和 Chrome 之间进行通信。
不同于 Electron 和 NW.js ,Carlo 并不会尝试将特定版本的 Chrome 和 Node.js 打包在一起,而是依赖于用户电脑上已安装的任意版本的 Chrome ,该项目的动机之一是演示本地安装的浏览器如何与开箱即用的 Node 一起使用。此外,Carlo 会分离 Node v8 和 Chrome v8 引擎,提供可维护的 model ,能够独立更新底层组件。
Carlo 并不提供构建真正桌面应用的功能,像是修改应用图标或自定义菜单,Carlo 更专注于生产力和 Web/Node 的互操作性。不过,你也可以使用 pkg 将 Carlo 应用打包到可执行二进制文件中。
示例 - 显示本地环境
Save file as example.js
Save file as example.html
运行应用
开源中国征稿开始啦!
开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 200 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。
现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿
更多详情请查看阅读原文↓↓↓↓↓