GitHub - gorenje/erlang-red:受 Node-RED 启发的 Erlang 面包板编程

这是一个关于 Erlang-Red 的介绍,它是 Node-RED 的 BEAM/Erlang 后端,旨在实现与现有 Node-RED 流代码 100%兼容,并将低代码可视化流编程的优势与 Erlang 的消息传递和并发设计相结合。

主要观点

  • 提供 Erlang 后端替代 Node-RED 的现有 NodeJS 后端。
  • 利用 Erlang 的特性实现并发编程,同时保持低代码可视化编程的简单性。
  • 介绍了 Erlang-Red 的各种功能、节点支持、开发策略、架构等方面。

关键信息和重要细节

  • 尝试 Erlang-Red:可通过ered.fly.dev或本地 Docker 测试,命令为docker run --tty --publish 8080:8080 gorenje/erlang-red:0.2.3
  • 在线示例:有MQTT Broker解释
  • 开发策略:基于流驱动开发,通过测试流确保节点功能正确实现。
  • 架构方面:描述了将部署到 Erlang-Red 的过程,以及各种节点(如supervisor 节点等)的工作原理和挑战。
  • 支持的节点及功能:列出了部分工作的 Node-RED 核心节点、Erlang 特定节点、单元测试节点等,并说明了其功能和示例流。
  • 与 Elixir 的关系:Elixir 助手可添加到erlang-red-elixir-helpers仓库,可创建 Elixir 节点并通过 Erlang“节点包装器”引用。
  • 构建、测试、开发等:提供了rebar3相关的构建、测试、开发命令,以及 Docker 相关的开发和部署步骤,包括 Fly.io 和 Heroku 的部署。
  • 测试相关:扩展了 Node-RED 前端的“Create Test Case”按钮用于创建单元测试,测试流存储在testflows目录,还创建了“Assert Failed”和“Assert Success”等断言节点用于测试。
  • 贡献相关:欢迎以 Erlang 代码、Node-RED 测试流等形式贡献,每个测试流应测试一个功能并使用断言节点检查结果。
  • 姐妹仓库:介绍了多个相关的姐妹仓库,如Unit test flow suiteNode-RED and Erlang-Red unit testing nodes等。
  • 常见问题解答:在Erlang ForumNode-RED Forum上可获取问题和答案,Hacker News上也有相关讨论。
  • 致谢:感谢NickDave及整个Node-RED 社区,还感谢@mwmiller等多人在开发过程中的帮助。
  • 声明:代码创建过程未使用人工智能,遵循.aiignore中的规则。
阅读 12
0 条评论