Node-RED 2.0
nodered.org
nodered.org
Some of the main contributors (Nick O'Leary & others) of the project evidently are cooking something up on top of Node-RED: https://flowforge.com/
I'm the investor behind it and right now we plan something open core, a business model similar to GitLab.
Fantastic app and excited to see what's next.
I once used it to demo a vulnerability on a client's website using NodeRed that I could trigger from my phone.
Basically I made NodeRed spit out a JS file which I enbedded on their site using the vulnerability and could trigger the content of the js from my phone
Felt so movie hacking-like. Website looked normal until I flipped a switch on my phone, now all images are replaced by kittens
Something I wish they'd get to is looping support. It's unusual that you need a third party extension to do a for-loop. Fingers crossed this can make its way into NR proper in a future release.
Out of curiosity, what do you need a for loop for?
I've so far only created a single loop: it randomly changes the colors of a couple lights in my office.
This uses a delay component and a switch (controllable from Home Assistant) called "office_lights_cycle". The switch both initially triggers and breaks the loop. When executed, it picks a random color for one light, sets the other to a complementary hue 90° away, sets them with a transition time of 300s (very slow fade), and the loop triggers again a few minutes later.
Not actually parallel, but I presume that's what they meant.
Really dig the developer experience upgrades.
Btw, I'd long ignored Node-RED because it was synchronous. Turns out the big change as they dropped 1.0 ~2 years ago was switching to an asychronous processing model. This makes it far more interesting imo. https://nodered.org/blog/2019/08/16/going-async
If you are on the fence about using node-red, please give it a try. Despite being a skilled engineer and actively writing in a half dozen languages, I still use node-red heavily for low code tasks. Some recent examples:
+ Automated task to check a county court website for updates to a case I'm following
+ Let me know when several clinical trials I am following post results
+ Price/stock tracking
+ Prototype dashboard/debugging for a garden monitor device I built
Interestingly, "half a dozen" makes it sound bigger by relating to twelve (12), while "a handful", while closer to the truth, would somehow diminish the impact.
PS: I suggest that "a hanfdful" is closer to the truth, because any value different than 5, 6, 7 could have been named more appropriately.
e.g. 2-3: a couple 4: a handful 5-6: a handful - half a dozen 7: half a dozen (somehow) 8-9: about ten 10: ten 11-12-13: a dozen ...
If I sounds like I'm pointing fingers, see me as a target as well. I want to highlight this as a funny/interesting bias in numbering as a communication technique. If someone in the crowd has a name or reference for it, I'm still curious.
I think the issue though, is when you say "a handful is closer to the truth" it sounds like you're correcting gp and telling them how many languages they know/use. Perhaps gp does use exactly 6 languages so saying a half dozen IS accurate?
I personally use a "fair number" of languages on the regular as well.
See 1 Peter 3:20 at https://biblehub.com/niv/1_peter/3-20.htm
Even if "half a dozen" is accurate, the usage of such indirect phrasing has some effect on the reader. Whether it is conscious or not, "half a dozen" reader bigger than 6.
No harm intended on my end.
Heck, it might be entirely accurate or even an understatement. I use four languages actively (c#, JS, SQL, Bash), five if you count PowerShell (though I only touch that at most once or twice a month ATM, so I'm not counting that as active). I find it very easy to believe many out there actively create new stuff in 6 or more, especially if they work on multiple sets of projects (day job current, day job legacy, personal experiments, open source projects, ...).
Essentially, I'd like to be able to use NR as primarily a viewer (probably also editor) of a 'source of truth' config file.
As it is, at very least nonsensical node IDs make it.. not impossible, but not useful beyond as a backup; no meaningful diffs.
The flow configuration is stored in a JSON file. That can pose challenges when it comes to getting meaningful diffs.
That said, we do have the Projects feature that brings version control (backed by git) into the editor. And when you view a diff of a flow, as we know what it is, we present a structured visual diff of the flow contents, rather than the raw JSON diff.
Still an area I'd like to improve.
[1] https://siddhi.io/en/v5.1/docs/query-guide/#pattern [2] https://github.com/carloszimm/node-red-contrib-cep [3] https://flows.nodered.org/node/node-red-contrib-actionflows
If your problem can be well represented by a block diagram or transfer function then it probably lends itself to function block programming. The visual animation of the logic is very helpful to me in understanding the influence of different components on the final result and troubleshooting misoperating machines.
It worked quite well, but we switched to a fully-managed printer provider since so I don't have to care for the printers anymore.
How-to normalize home volume levels with Node-RED - https://news.ycombinator.com/item?id=23349902 - May 2020 (28 comments)
Node-Red – Flow-Based Programming for the Internet of Things - https://news.ycombinator.com/item?id=18859019 - Jan 2019 (77 comments)
Replacing a Pool and Spa Controller with Raspberry Pi, Arduino, Node Red - https://news.ycombinator.com/item?id=18142335 - Oct 2018 (3 comments)
Node-RED: A visual tool for wiring the Internet of Things - https://news.ycombinator.com/item?id=13495156 - Jan 2017 (6 comments)
Node-Red, a tool for wiring together hardware devices, APIs and online services - https://news.ycombinator.com/item?id=8419984 - Oct 2014 (8 comments)
Node-RED - https://news.ycombinator.com/item?id=8310536 - Sept 2014 (1 comment)
Node-red, a visual tool for wiring the Internet of Things - https://news.ycombinator.com/item?id=8217664 - Aug 2014 (3 comments)
Programming the Missing Links in the Internet of Things - https://news.ycombinator.com/item?id=6459564 - Sept 2013 (1 comment)
Others?
If you need to extend the functionality there's nothing stopping you from running a python based server next to it.
> It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.
The integrations within n8n seem a little higher level I.e app to web service, Node-RED has lower level nodes such as Http, Mqtt, Websockets etc and a stack of domain specific stuff like OPC/UA
n8n have a for me slightly odd licence. From there site “ While n8n's source code is publicly available, our license restricts our code from being embedded in commercial software products without a separate license agreement.”
For me that’s troublesome and stopped me even looking at it.
Be great if someone told me I am wrong.