Show HN: Visual flow-based programming for Erlang, inspired by Node-RED

https://news.ycombinator.com/rss Hits: 10
Summary

Erlang-RED - A Node-RED backend coded in Erlang An experiment to replace Node-REDs existing NodeJS backend with an Erlang equivalent that is 100% compatible[1] to existing flow code. The goal is bring the advantages of low-code visual flow-based programming to a programming language that is designed for message passing and concurrency from the ground up, hence Erlang. [1] = 100% won't be possible since function nodes that are coded in Javascript aren't supported (or aren't intended to be supported - unless someone has a workaround) Node-RED is a amazing[*] tool for creating flows that describe concurrent processing, it is just a shame the NodeJS is single threaded. So why not use something that is multi-process from the ground up? Concurrency is guaranteed and included. Also Erlang isn't the most understandable of programming language - unless one has fallen into in a cauldron of Prolog, spiced with Lisp. So won't it be great to have the simplicity of low-code visual flow based programming and the performance (and concurrency) of Erlang? [*] = amazing in the sense of extendability (Nodes can easily be added and developed by third parties), understandability (Node-RED terminology is straightforward) and usability (once a rectangle becomes a unit of computation and a line becomes a pathway for data flow) Development Strategy My development process is best described as flow driven development based around a set of test flows to ensure that node functionality is implemented correctly - meaning that it matches the existing Node-RED functionality. Test flows are mirrored in a separate repository for better maintainability and also integration with existing Node-RED installations. Architecture The architecture, along with a background to Flow Based Programming and Node-RED has been written. The codebase as it stands, has many interdependence because of testing flows: assert nodes need to know about web-socket communication, or because of the nature of nodes: the complete n...

First seen: 2025-05-16 15:44

Last seen: 2025-05-17 00:45