Curated list of useful resources for Node-RED.
Node-RED is a programming tool for wiring together hardware devices, APIs and online services in new and interesting ways.
Featured Content Ads
add advertising hereIt 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.
Contents
- Installation
- Documentation
- Nodes
- Analysis
- Database
- Development
- Function
- Hardware
- I/O
- Parsers
- Smarthome
- Social
- System
- Time
- Utility
- UI
- Community
Installation
- Running locally
- Running under Docker
- c’t-Smart-Home – A ready-to-use setup for home automation maintained by german computer magazine c’t.
- Home Assistant Community Add-on – Starts an instance within Home Assistant and communicates with it.
- ioBroker node-red Adapter – Starts an instance within ioBroker and communicates with it.
- openHAB running on openHABian – Install Node-RED using openhab-config from command line, choose it from “Optional Components”.
- RedMatic – Install Node-RED on a CCU3, smart home automation hardware from the manufacturer eQ-3, popular especially in Germany.
Documentation
- Getting Started
- FAQ
- Tutorials
- User Guide
Nodes
Analysis
- badwords – Analyses the payload and tries to filter out any messages containing bad swear words. This only operates on payloads of type string. Everything else is blocked.
- wordpos – Analyses the payload and classifies the part-of-speech of each word. The resulting message has msg.pos added with the results. A word may appear in multiple categories (eg, ‘great’ is both a noun and an adjective).
Database
- influxdb – Save and query data from an InfluxDB time series database.
- mssql-plus – Execute queries, stored procedures and bulk inserts in Microsoft SQL Server and Azure Databases SQL2000 ~ SQL2019.
- stackhero-influxdb-v2 – Save and query data from an InfluxDB v2 time series database.
- stackhero-mysql – Connect to a MySQL or a MariaDB database, using TLS (SSL) and compatible with “Caching SHA2 password” authentication method (MySQL >= 8).
- leveldb – Uses LevelDB for a simple key value pair database.
- mysql – Allows basic access to a MySQL database.
- sqlite – Supports read and write to a local sqlite database.
Development
- typescript-starter – Quick-start template repository for creating new node sets in TypeScript.
Function
- datagenerater – Generate dummy data in various formats, names, addresses, emails, numbers, words, etc.
- pidcontrol – A PID control node for numeric inputs – provides simple controll loop feedback capability.
- random – Random number generator – can generate integers for x to y – or floats between x and y.
- rbe – Provide report by exception and deadband / bandgap capability for simple inputs.
- smooth – Provide various functions across several previous values, including max, min, mean, high and low pass filters.
Hardware
- arduino – Uses firmata protocol to talk to the board.
- beaglebone – Nodes for the Beaglebone Black.
- blink1 – Blink1 USB LED from ThingM.
- blinkstick – BlinkStick USB LED device.
- digirgb – DigiSpark RGB USB LED.
- heatmiser – Temperature and frost protection for Heatmiser thermostats.
- intel-galileo – A collection for the Intel Galileo and Edison.
- ledborg – LEDborg plug on module.
- makeymakey – Read from a MakeyMakey input device.
- pi-gpiod – An alternative to the default PI GPIO nodes that allows remote access.
- pi-mcp3008 – Read from MCP300x series Analogue to Digital Converter chips via the SPI bus.
- pi-neopixel – Drive a strip of NeoPixels directly.
- pi-unicorn-hat – Controls a Pimorini Unicorn HAT 8×8 LED display.
- pibrella – Controls a Pibrella add-on board.
- piface – PiFace interface module.
- piliter – Controls a Pimorini Pi-LITEr 8 LED add-on board.
- sensortag – Reads data from the Ti Bluetooth Low Energy SensorTag device.
- wemo – Drive a WeMo socket and switch.
- scanBLE – Scans for a particular Bluetooth Low Energy device.
I/O
- discovery – Discovers other Avahi/Bonjour services on the network.
- emoncms – Post to an Emoncms server.
- noble-bluetooth – Based on noble for interaction with Bluetooth Low Energy devices.
- mindconnect – Upload timeseries, files and events to MindSphere.
- modbus – All in one Modbus TCP and Serial package.
- mqlight – Adds nodes to send and receive using MQlight.
- ping – Pings a machine and returns the trip time in mS.
- s7 – Interact with Siemens S7 PLCs.
- serialport – Send messages to and receive messages from a physical serial port.
- snmp – SNMP receivers for single OIDs or OID tables.
- stomp – Publish and subscribe to and from a STOMP server.
- wol – Sends a Wake-On-LAN magic packet to the mac address specified.
- xiaomi-ble – Single “Xiaomi BLE” node that gets all known data from Xiaomi BLE (Bluetooth 4).
Parsers
- base64 – Converts a payload to/from base64 encoded format.
- geohash – Converts a lat, lon payload to/from geohash format.
- msgpack – Converts a payload to/from msgpack binary packed format.
- what3words – Encodes or Decodes a lat, lon position into what3words text format.
Smarthome
- alexa-home – Connect with Alexa just wihtin the local network – no extra cloud stuff is required.
- alexa-home-skill-v3 – Controls things via Alexa and Google Home.
- alexa-remote-cakebaked – Interacting with the Alexa API. Emulates routine behaviour, control and query your devices.
- avr-yamaha – Integrate and control YAMAHA™ audio/video receiver via YNCA protocol.
- ccu – Connect with Homematic, a series of smart home automation hardware from the manufacturer eQ-3, popular especially in Germany.
- deconz – Access Zigbee 3.0 (Z30), Zigbee Home Automation (ZHA) and Zigbee Light Link (ZLL) lights via deCONZ.
- fritz – Provides easy access to your AVM Fritz!Box. Read and write the configuration including the VoIP and Dect configuration.
- fritzapi – Controls smart home DECT devices and guest wifi through an AVM Fritz!Box.
- harmony – Controls devices connected to a Logitech™ Harmony Hub.
- home-assistant – Connect with Home Assistant.
- home-assistant-websocket – Various nodes using websockets to assist in setting up communication with Home Assistant.
- homebridge-automation – Integrate Homebridge Accessories into flows.
- homee – Access the homee api and create virtual devices for homee.
- homekit-bridged – Imitate HomeKit devices.
- huemagic – Controls Philips Hue bridges, lights, groups, scenes, rules, taps, switches, buttons, motion sensors, temperature sensors and Lux sensors.
- lgtv – Controls LG webOS Smart TVs.
- loxone – Connect to the Loxone Miniserver.
- knx-ultimate – Controls KNX intallation. With optional ETS group address importer and gateway simulation.
- openhab3 – Integration of openHAB item states and commands.
- smartnora – Google smart home Action integration via Smart NORA.
- sonos-plus – Controls Sonos player in your local network.
- tado-client – Connect to the Tado Web API.
- tahoma – Controls a Somfy Tahoma box (Roller shutters, etc.).
- tasmota – Tasmota devices integration for building automation.
- tuya-smart – Interface with smart plugs, bulbs, etc. from tuya.
- zigbee – Controls Zigbee Devices via a CC253x Module.
- zigbee2mqtt – Zigbee2mqtt connectivity.
- zwave-js – Integrates Z-Wave node based on Z-Wave JS.
Social
- chatbot – Full featured chat bot for Telegram, Facebook Messenger, Viber, Twilio and Slack.
- discord-advanced – Interact with Discord, via Discord.js.
- dweetio – Uses dweetio to send/receive messages.
- email – Sends and receives simple emails from services like gmail or smtp or imap servers.
- feedparser – Reads messages from an atom or rss feed.
- irc – Connect to an IRC server to send and receive messages.
- notify – Uses Growl to provide a desktop popup. Only useful on the local Apple machine.
- prowl – Uses Prowl to push to an Apple device that has the Prowl app installed.
- pushbullet – Uses PushBullet to push an Android device that has the app installed.
- pusher – Publish-Subscribe to a Pusher channel/event.
- pushover – Sends alerts via Pushover.
- PushStaq – Send real time alerts using Push Notifications from your Node-Red flows to any device with PushStaq.
- slack – Interact with the Slack API.
- sms77 – Uses sms77 service for SMS, text-to-speech calls and number lookups.
- telegrambot – Contains a receiver and a sender node which act as a Telegram Bot.
- twilio – Uses Twilio service to send/receive text messages.
- whatsappbot – WhatsApp Bot.
- xmpp – Connect to an XMPP server to send and receive messages.
System
- aedes – MQTT Broker based on Aedes.
- dockerode – Connect to Docker daemon.
- os – Obtain system information.
Time
- blindcontroller – Automate the control of household roller blinds based on the current position of the sun.
- bigtimer – Timing node with support for dusk/sunset dawn/sunrise and variations also day/week/month (and special days) control. The node offers outputs suitable for MQTT, speech and databases.
- suncalc – Uses the suncalc module to generate an output at sunrise and sunset based on a specified location.
- simpletime – Adds time and date payloads with various formatting options, which can be retreived and used later in the flow.
- sun-position – Timer based flow control with dusk, dawn (and variations) and much more. Additional you can get sun and moon position or to control a flow by sun or moon position.
- timeswitch – Lets the user set simple repeating timers for example for simple heating control, etc.
Utility
- actionflows – Brings easy to use loops and OOP (object oriented programming) features.
- alarm – Build your own home alarm system with any number of panels, zones, sensors, triggers and automations.
- bool-gate – Boolean logic gates.
- daemon – Starts up (calls) a long running system program and pipes STDIN, STDOUT and STDERR to and from that process.
- exif – Extracts GPS and other EXIF information from a passed in jpeg image.
- german-holidays – Getting german holidays or information if today/tomorrow is a holiday.
- ical-events – Get events from an ical-URL, a caldav-server or from iCloud via kalender-events.
- interval-length – Measure the (time) interval length between successive messages.
- moment – Produces a nicely formatted Date/Time string using the Moment.js library.
- owntracks – Converts Owntrack Messages into standard geo message and deals with encrypted locations.
- persist – Persist data over Node-RED restarts and deploys.
- self-healing – Making Node-RED more resilient by adding self-healing capabilities.
- state-machine – Wraps around the JavaScript State Machine to implement a finite state machine.
- string – Provides native and extended chainable JavaScript string parsing and manipulation methods.
- twc-weather – The Weather Company and Weather Underground Personal Weather Station APIs.
- users – Quickly build a very simple user access control for HTTP-based flows.
- watson – Interact with the IBM Watson services in IBM Cloud.
UI
- browser-utils – Add browser functionality such as file upload, camera & microphone.
- node-red-dashboard – Create a live data dashboard.
- https://flows.nodered.org/collection – Dashboard extra nodes.
- flow-manager – Separates flow json to multiple files.
- iglass – Interaction with iGlass Automation blocks.
- image-output – Simple image output node. Useful for previewing images (of face detecting, object recognition etc.) inside the flow editor.
- uibuilder – Create dynamic web interfaces using any (or no) front end libraries for convenience.
- web-worldmap – Provide a world map web page for plotting “things” on.
Community
- HomeAssistant Forum
- Node-RED Forum
- Node-RED Blog
- Node-RED User Group Japan
- Redmatic Forum
- Slack
- Stack Overflow
- Steves Node-RED Guide
- YouTube
Contributing
Contributions welcome! Read the contribution guidelines first.