Neat project, and I think erlang (or its offshoots, like elixir) are great candidates for this sort of thing.
That said, I take issue with this:
>is great for creating data flows that actually describe concurrent processing, it is just a shame the NodeJS is single threaded
Its not really true, there are `worker_threads`[0] as well as a cluster process module[1] for multi processing.
The nodejs runtime has really come a long way here. Though, it is true that by default, its single threaded, and one could argue, and I'd agree with it, that its much easier to do multi process / multi threaded work on the BEAM since it was built with this in mind from the get go.
Never the less, its not so true that NodeJS is limited to a single thread!
I think you said it yourself in that by default NodeJS is single threaded so the mystic remains even if it’s not true.
What would be a fun project would be to make worker threads as seamless as processes are in Erlang. Ie back-port all the ideas of Erlang to NodeJs and then implement something like Erlang Red on top of that!
Another example is that Erlang Red, which based on Node-Red, has supervisor nodes that implement the supervisor behaviour. These nodes could now be backported to Node Red so that it would also have the supervisor behaviour in NodeJS.
That’s something new in the Erlang world.
[1] = https://github.com/gorenje/erlang-red