Readit News logoReadit News
OJFord · 4 years ago
The one thing I want added to Node-Red is an editable, sanely git diff-able on-disk text format for its configuration. I want to be able to edit either in GUI or in text, and then view the result in the GUI (and have it work of course!).

Does anybody know if there's any plugin for or way of achieving that? When I last looked into it, people were checking in the config files (whatever format they were, perhaps proprietary) but they were a mess, may as well be binaries or PDFs etc. for all the value you'd get out of git for them.

hardillb · 4 years ago
The flows are stored as JSON and there is a setting to save them as prettified to make them more readable (`flowFilePretty: true` in the settings.js which is on by default in recent release).

Also the flow storage is fully plugable (https://nodered.org/docs/api/storage/) so nothing to stop you choosing/implementing a different storage format e.g. YAML https://github.com/natcl/node-red-contrib-yaml-storage

OJFord · 4 years ago
But can you actually hand-write it? When I last looked IDs were UUIDs or similar, so you'd have to create a node in the GUI for a start, and even then the structure of it just clearly wasn't designed for manual editing or diffing. 'Storage' sort of sums it up really, doesn't it?
rcarmo · 4 years ago
Are you aware of the projects feature and how it lets you maintain all your flows in a git repo, complete with "visual" diffing?
OJFord · 4 years ago
Yes, but I can also put MS Word .docx files 'in a git repo', and diff them with MS Word proprietary version control. That's not good enough for use at work, in a software project among software engineers who don't need or necessarily want no/low-code; and it's not what I want in personal 'home automation' use either, which is where I gather it's perhaps most popular and how I discovered it - and probably most of that audience does want no/low-code and doesn't know 'what a git is', but, you know, I'm a SE, I know what git is, I like it, can't bare the idea of having anything like HA outside of its control.
BearsAreCool · 4 years ago
The on-disk text is still crazy but you can turn on version tracking in node-red that lets you track any changes made.
alexmorley · 4 years ago
Should probably change the submission title to "Awesome Node-RED".
krageon · 4 years ago
Or "Curated list of useful resources for Node-RED", as the subtitle is on this page. Even "awesome node-red" doesn't really say anything about the content.
zwirbl · 4 years ago
"Awesome X" is often used as a stand-in for "curated list of useful resources for X". Like Awesome Rust, Awesome ruby and so on.
peterhajas · 4 years ago
I use NodeRed a lot for my smart home and local network as glue between different pieces. It works really well for “hit this API, apply this transformation, and then return it when I send you a GET at /something” or “listen for MQTT, get this key out of the message, and rebroadcast it”.
meepmorp · 4 years ago
Do you use it on it's own, or with other automation software like home assistant or openhab?
djanogo · 4 years ago
I have similar process setup as original poster, instead of MQTT, I use home assistant Node-RED pallete which exposes all home assistant entities to nodered.

Node-RED automation is SO much better than home assistant automation or Huggins, ability to deploy modified flows when nodes on same flow are kept running is AMAZING!, makes dev cycle so much faster.

I use home assistant's builtin zwave, homekit controller, homekit bridge, Sonos, and InfluxDB, everything else is commented out. It's all running on used $50 HP Prodesk G2 with Ubuntu server with HASSOS in VM, VS.Code server in docker. Uses about 7 watts/hr.

peterhajas · 4 years ago
I use it with HomeAssistant. I like HA automations for many things, but I really prefer NodeRed for gluing together systems or sketching things.
interlock · 4 years ago
I use Node-Red for automating many work related tasks with the team I manage. One thing I wish it supported was multiple accounts that have separate flows. Even better would be support to separate where flows run from the UI, on a per users basis. I could host a worker node with our infra at work, allowing me to work with some of the more sensitive data and share it more openly with my peers.

All in all, it’s been a great tool to use.

goldman7911 · 4 years ago
I had worked +/- 5 months ago a lot with nodered. One thing I miss is some kind of benchmark performance for huge projects. Is something new in docs regarding this? This tool is really great.
utmostGP · 4 years ago
I agree! what kind of project were you working on that you consider a 'huge project' genuinely curious to learn how other people are applying this to use-cases beyond home automation!
scottc · 4 years ago
Would anyone here want a cloud-hosted hosted version of node-red? Like a PaaS for node-red?
knolleary · 4 years ago
There are a few such services out there today.

It's also what we're working on at https://flowforge.com

(Disclaimer - I'm the co-founder of the Node-RED project, and CTO/Founder at FlowForge)