Nodes are triggered by either receiving a message from the previous node in a flow, or by waiting for some external event, such as an incoming HTTP request, a timer or GPIO hardware change. They process that message, or event, and then may send a message to the next nodes in the flow.
A node can have at most one input port and as many output ports as it requires.
For example, the MQTT In and Out nodes use an MQTT Broker config node to represent a shared connection to an MQTT broker.
Config nodes do not appear in the main workspace, but can be seen by opening the Configuration nodes sidebar.
The term “flow” is also used to informally describe a single set of connected nodes. So a flow (tab) can contain multiple flows (sets of connected nodes).
There are three types of context;
By default, Node-RED uses an in-memory Context store so values do not get saved across restarts. It can be configured to use a file-system based store to make the values persistent. It is also possible to plug-in alternative storage plugins.
msg
within the editor.
By convention, they have a payload
property containing the most useful information.
They can be used to reduce some visual complexity of a flow, or to package up a group of nodes as a reusable component used in multiple places.
Extra nodes can be installed into the palette using either the command-line or the Palette Manager.
The workspace has a row of tabs along the top; one for each flow and any subflows that have been opened.
Node-RED: Low-code programming for event-driven applications.
A project of the OpenJS Foundation.