Is node-red the right tool for me

Hi, I want to build a little smarthome project with standard REST service, an android app and what I need now is to decide whether I want mqtt for the MCU-communication. Is node-red the tool to do exactly that? if not, does anyone know how I can do it?
thanks in advance!

Node-RED could certainly sit in the middle of all that.

awesome, so can i write the broker with node-red without having to include it in the rest of the project? You know a guide ?

What exactly is node-red?

I personally wouldn't typically run the broker in Node-RED itself given how easy it is to install mosquitto and run it as a service.. Although there are nodes that will run a broker for you. Have a search on

I would suggest you start to digest some of the basic information easily found starting here
Before you start coding etc, just so that you avoid having to re-do things too many times. It happened to me and many others I assume, so just a hint

It is pretty much anything you make it to be. Its the glue between this and that.

I personally find it incredibly versatile & very productive.

For example, no longer do I spin up an express to mock a rest API - I add a http in & out node to a node-red instance.

No more do I write custom apps for getting plc data to database.

Scada is almost a thing of the past.

I could go on. But I'll let you discover. (look around the flows and forum)

Unfortunately, It is also highly addictive I'm afraid.

So in my understanding you have this huge library of nodes that you can connect with node-red, thus you dont have to program all that yourself? What if I want my own app to be in the middle of that? can i make a node myself and put it in there?

Of course, it is in the documentation. Many people are doing that and contributed with fantastic creations

node-red can be the rest-api, node-red can also access rest api's, both out of the box.

From the docs: "Node-RED is a flow-based programming tool." It is open source, runs on top of node.js and comes with a set of "core" nodes as part of the package. These and some additional nodes are maintained by the principal developers, and there are literally thousands of contributed nodes written by members of the community. Everything you described is possible. You can write flows using only core and contributed nodes, with absolutely no coding involved. At this point you have access to mqtt, http, tcp, udp, serial, and websockets for communication, as well as a bunch of other protocols for specific devices. If you want to write your own code, the function node lets you program in JavaScript, you can create your own custom node, or write in any language you choose and link to NR through one of the methods above or an exec node. You get a lot of power for very little effort, and you get a community of users that is friendly and helpful.

You've probably figured most of this out by now. Good luck and welcome to the NR community.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.