我们做得不太好的一件事是,没有及时向社区同步项目的总体进展。邮件列表和 Slack 团队里总是有源源不断的讨论和辩论,但我们很容易忘记,不是每个人都会关注所有这些线索。

因此,我们打算尝试更频繁地在这里发布文章,分享整个项目的进展情况。

🎉 100 万次安装 🎉

首先要强调的是,我们最近在 npm 上实现了 Node-RED 的 100 万次历史安装量。对于这个我们仍觉得是“我们的小项目”来说,这是一个不可思议的里程碑。

很难深入挖掘这个数字来更多地了解 Node-RED 在何处以及如何被使用。我们可以说的一件事是,大约 45% 的安装发生在 IBM Cloud 内——这个事实我们可以从 node-red-bluemix-nodes 模块的安装统计数据中推断出来。这个数字也不包括那些使用树莓派预装版本的用户,除非他们使用了我们的更新脚本来升级到最新版本。

我们跟踪了关于项目的各种其他统计数据,以了解社区的增长情况,例如邮件列表和 Slack 团队的注册人数。虽然没有一项数据本身是决定性的指标,但它们都显示出稳定良好的增长。

0.18 版本更新

我们收到了很多关于我们在 0.18 版本中发布的“项目”功能的极好反馈,但仍有很多工作要做。

最常见的问题与远程 git 仓库的身份验证有关。还有一些悬而未决的问题需要解决——其中最棘手的是 Windows 上的 HTTPS 身份验证。总的来说,如果你使用 SSH 密钥,一切应该都能正常工作。

我们也在考虑“项目”功能的下一步。两个热门话题是:

  1. 如何将一个“项目”变成可部署的构件。目标是能够克隆一个项目,通过 npm install 获取其依赖项,然后简单地通过 npm start 运行它——完全无需接触编辑器。

  2. 如何为你的节点设置特定于环境的配置。例如,你可能希望在本地开发和测试时使用本地的 MQTT 代理,但当你部署到“生产”环境时,你希望使用生产环境的代理。我们已经支持使用环境变量来动态配置节点(这个事实我们确实需要文档化),我们希望看看如何通过“项目”功能更好地暴露这一点。

更新路线图

1.0 版本的路线图仍然是我们工作的总体规划,并将随着进展继续演变。我们安排某些技术内容的方式并没有完全实现——例如,“库”的重新设计没有进入 0.18 版本,我们目前对这部分工作也没有明确的展望。

我们需要为 0.19 版本制定一个更具体的计划,以免我们再过 6 个月才发布下一个里程碑版本。最终,发布版本的内容将由社区的反馈和所做的贡献来决定。

编辑器/运行时分离

路线图上最重要的功能之一是将编辑器和运行时分离成各自的包。这将为 Node-RED 带来许多不同的用例。

这也是一个相当难解决的问题;要确保我们在编辑器和运行时之间暴露的 API 是正确的。这是我们过去几周一直关注的项目。和所有主要功能项目一样,有一个 wiki 页面,我们正在那里进行设计工作。目前,纸上草稿比 wiki 上的内容要多,但这在未来几天会改变。

测试节点

Mike Blackstock 已经带头帮助标准化第三方如何为他们的节点编写测试用例。核心节点已经有一个测试帮助模块,Mike 已经将其提取到自己的仓库中,即 node-red-node-test-helper

这项工作仍在进行中,但我们希望它能成为创建高质量节点的宝贵工具。

如果你想了解更多信息,请来 Slack 上的 #testing 频道聊天。

Flow Library 更新

Mike 也一直忙于对 Flow Library 进行一些急需的更新。

以前,每当有人加载该页面时,它都会检索所有节点和流的完整列表。在早期这不是问题,但现在我们有超过 2000 个项目被列出,是时候让初始页面加载更高效了。

多亏了 Mike 的工作,现在它一次加载一页的项目,使得加载速度快得多。这方面还有一些调整要做,但这是一个坚实的起点。

不仅如此,Mike 还增加了给任何节点打分(1-5分)的功能——前提是你通过 GitHub 按钮登录。随着时间的推移,这将让用户更好地了解任何特定节点的质量。我们也会在某个时候研究如何在编辑器的面板管理器中显示这些评分。

我们在每个节点的页面上添加了“报告此模块”的链接。如果你对某个节点的内容有任何疑虑,例如不适当或不合适的内容,这可以让你通知管理员进行查看。这不是用于报告错误和寻求节点使用帮助的——这类报告应该直接提交给节点作者。

Cookbook (食谱)

最后,发出一个呼吁。我们在一年前启动了 Cookbook 项目,旨在汇集大量简单的“食谱”,涵盖使用 Node-RED 可以做的基本操作。

随着时间的推移,我们希望将其扩展到更复杂的食谱,但我们热衷于确保首先涵盖了基础知识。

遗憾的是,我们在填充 Cookbook 方面没有取得我们希望的进展。

如果你是 Node-RED 的热心用户,并想为社区做点贡献,这将是一个很好的参与方式。请到 Slack 的 #docs 频道来了解更多信息。

了解更多关于 Node-RED 的信息

我们经常被问到如何开始使用 Node-RED,以及有哪些学习资料。

这里有几个入门的指引:

  1. Coursera:Node-RED 开发者指南 - 来自 IBM。是关于物联网的一系列课程的一部分。免责声明:我帮助创建了这门课程

  2. Node-RED 编程指南 - 来自 SenseTecnic 的 Mike 和他的团队。这是一系列涵盖广泛主题的讲座。

如果你知道其他有用的资源,请与我们分享。我们希望在 nodered.org 上创建一个链接集合,帮助用户找到这类东西。