Node-RED

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Node-RED
Original authorsIBM Emerging Technology
• Nick O'Leary
• Dave Conway-Jones
DeveloperJS Foundation
Initial release2013[1]
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inJavaScript
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemCross-platform
    PlatformNode.js
    TypeFlow-based programming for wiring the Internet of things
    LicenseApache License 2.0

    Node-RED is a flow-based, low-code development tool for visual programming, originally developed by IBM for wiring together hardware devices, APIs and online services as part of the Internet of things.[2]

    Node-RED provides a web browser-based flow editor, which can be used to create JavaScript functions. Elements of applications can be saved or shared for re-use. The runtime is built on Node.js. The flows created in Node-RED are stored using JSON.

    In 2016, IBM contributed Node-RED as an open source OpenJS Foundation project.[3][4][5]

    Projects

    [edit | edit source]

    The Node-RED project has a number of components:

    • Node-RED – the visual designer tool accessed through a web browser, usually on port 1880.[6]
    • Node-RED Dashboard – a dashboard user interface for Node-RED.
    • Node generator, a command-line tool to generate Node-RED node modules from several sources, including OpenAPI documents and a function node's source.
    • Node-RED Command Line Tool, a command-line tool that allows for remotely administering a Node-RED instance.

    Flows

    [edit | edit source]

    A Node-RED flow describes the connection and sequencing of various input, output, and processing nodes within the Node-RED platform. Each node within a flow performs a unique and specific task. When data is transmitted to a node, the node processes it according to its designated function, before passing it on to the subsequent node in the flow. This system allows for the controlled execution and regulation of a wide range of operations. Node-RED flows represent the primary visual programming mechanism of the tool.

    Node-RED Flow
    Node-RED Flow

    Adoption

    [edit | edit source]

    Node-RED has gained traction in the industrial internet of things (IIoT) and edge computing sectors.[7][8][9] Node-RED's open-source nature and large community have led to the creation of over 4000 connectors[10] supporting a wide range of data sources and protocols such as Modbus, OPC-UA, Siemens S7, and MQTT. Several PLC and IoT vendors[11] have adopted Node-RED as a standard.

    Community survey

    [edit | edit source]

    The 2023 Node-RED Community Survey[12] provided insights into the usage patterns, preferences, and feedback from 780 individuals who are part of the Node-RED community. The survey, conducted in March 2023, revealed that Node-RED's usage extends beyond DIY home automation, with a trend towards professional use in a variety of industries. Over half of the respondents had been using Node-RED for over two years, indicating a well-established community. The most common messaging technologies used in conjunction with Node-RED are MQTT and HTTP, while InfluxDB emerged as the most popular database within the community. The survey also shed light on perceived barriers to adoption, pointing towards the perception of Node-RED as a proof of concept tool and the lack of certain key features. Despite these challenges, the survey highlighted a high level of satisfaction within the community, with over two-thirds of respondents rating Node-RED a 5 out of 5.

    Commercial offerings

    [edit | edit source]

    FlowFuse[13] (formerly known as FlowForge[14]) is an open-core company investing in Node-RED. Nick O’Leary, co-creator of Node-RED, is FlowFuse co-founder and CTO. FlowFuse adds collaborative development, management of remote deployments, support for DevOps delivery pipelines, and the ability to host Node-RED applications on FlowFuse Cloud.

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    References

    [edit | edit source]
    1. ^ nodered.org
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    13. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    14. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]
    • Lua error in Module:Official_website at line 94: attempt to index field 'wikibase' (a nil value).