Abstract violet and amber illustration representing Node-RED, a flow-based visual programming tool for connecting hardware, APIs, and services

Node-RED

Node-RED

Node-RED est un éditeur de flux visuel, accessible depuis le navigateur, pour relier matériel, API et services sans écrire une application complète : nœuds sur un canevas, fils entre eux, messages en temps réel. Né hors de la domotique, il est devenu le réflexe des homelabbers dès que l’éditeur Home Assistant montre ses limites, en reliant des systèmes qui sinon ne se parleraient jamais.

Licence : Apache License 2.0, confirmée depuis le fichier LICENSE du dépôt GitHub node-red/node-red, copyright OpenJS Foundation et les contributeurs. Permissive et non copyleft, comme Home Assistant : aucune obligation de repartager le code modifié, même en cas de redistribution commerciale.

En bref : site officiel nodered.org · GitHub node-red/node-red, plus de 23 000 étoiles · image Docker nodered/node-red, plus de 319 millions de téléchargements · version actuelle 5.0 (juin 2026) · port par défaut 1880 · gouverné par l’OpenJS Foundation, sponsorisé par FlowFuse.

D’où vient Node-RED, et ce que « flow-based » veut dire

Node-RED est né vers 2013 chez IBM (Emerging Technology Services), sous l’impulsion de Nick O’Leary et Dave Conway-Jones, pour simplifier le câblage de l’Internet des objets sans monter une pile complète à chaque essai. Passé à la JS Foundation en 2016 puis à l’OpenJS Foundation en 2019, il est sponsorisé par FlowFuse, fondée par ses créateurs d’origine ; IBM n’est qu’un ancien sponsor.

Le principe « flow-based » est central : chaque nœud fait une seule chose, abonnement MQTT, requête HTTP, aiguillage, fonction JavaScript, et les fils transportent un objet msg à chaque déclenchement. Le flux affiché EST la logique, contrairement au moteur de Home Assistant, structuré en règles déclencheur/condition/action plutôt qu’en canevas généraliste.

Ce que Node-RED apporte en plus de Home Assistant

Les automatisations de Home Assistant, via l’assistant graphique ou en YAML, couvrent déjà la plupart des cas « si X, alors Y » (notre fiche Home Assistant le détaille). Node-RED prend le relais quand la logique se complique : conditions imbriquées, service sans intégration native mais avec API REST, pont MQTT entre systèmes, ou automatisation annexe ne touchant HA que ponctuellement.

Le pont qui rend cela possible : le paquet communautaire node-red-contrib-home-assistant-websocket expose chaque entité Home Assistant comme un nœud Node-RED. Les changements d’état déclenchent les flux instantanément via websocket, sans polling, et les flux peuvent appeler n’importe quel service HA en retour. Add-on communautaire, à installer depuis le gestionnaire de palette.

Installer Node-RED avec Docker

L’image officielle est sur Docker Hub sous le nom nodered/node-red, avec une variante latest-minimal plus légère. Fichier compose de base :

services:
  nodered:
    container_name: nodered
    image: nodered/node-red:latest
    restart: unless-stopped
    ports:
      - "1880:1880"
    environment:
      - TZ=Europe/Amsterdam
    volumes:
      - /path/to/your/data:/data
docker compose up -d
  1. Adaptez le chemin des données et le fuseau horaire, puis lancez le conteneur.
  2. Ouvrez http://ip-de-votre-serveur:1880 ; l’éditeur démarre avec un canevas vide.
  3. Installez des nœuds supplémentaires, dont le paquet websocket Home Assistant, via le gestionnaire de palette.
  4. Déployez un flux avec le bouton en haut à droite ; rien ne s’exécute avant.

L’éditeur ne propose aucune connexion par défaut. Quiconque atteint le port 1880, sur le LAN ou, pire, sur internet, peut lire ou modifier chaque flux, identifiants compris. Activez l’authentification admin dans settings.js avant toute exposition ; le guide officiel de sécurisation détaille la marche à suivre. Un reverse proxy ou VPN mesh reste un complément utile, pas un substitut.

Cas d’usage courants de Node-RED dans un homelab

  • Automatisations Home Assistant trop complexes pour l’éditeur visuel : embranchements multiples, anti-rebond, séquences à plusieurs délais
  • Pont MQTT entre écosystèmes qui s’ignorent nativement : Zigbee2MQTT, détections Frigate, appareils ESPHome
  • Combinaisons d’API pour des services sans intégration native : endpoint ou webhook, réponse retravaillée, résultat poussé ailleurs
  • Diffusion de notifications : un seul déclencheur vers Pushover, ntfy, un webhook Discord et Home Assistant, sans tripler la logique
  • Tableaux de bord autonomes via node-red-dashboard, pour une vue technicien qui n’a pas besoin de l’interface HA

Node-RED face aux automatisations Home Assistant et aux règles openHAB

Ces outils se chevauchent plus qu’ils ne s’affrontent. L’éditeur Home Assistant, intégré à la plateforme, reste le plus rapide pour des règles simples. Le moteur de règles openHAB joue un rôle comparable, à base de scripts (DSL, JavaScript, Python). Node-RED est le généraliste du trio, aussi à l’aise avec des capteurs industriels qu’avec une ampoule connectée.

Node-REDAutomatisations Home AssistantRègles openHAB
ParadigmeProgrammation visuelle par fluxRègles déclencheur/condition/action (UI ou YAML)Scripts (DSL, JS, Python)
Lié à une plateformeNon, fonctionne seul ou avec tout systèmeOui, intégré à Home AssistantOui, intégré à openHAB
Idéal pourLogique complexe, intégration API/MQTTRègles domotiques simplesLogique propre à openHAB
Courbe d’apprentissageRéelle, nouveau paradigmeFaible pour les bases, raide en YAML avancéModérée, bases en scripting
LicenceApache-2.0Apache-2.0EPL-2.0

Node-RED : avantages et inconvénients

  • Vraiment généraliste : utile pour tout système parlant MQTT, HTTP ou une dizaine d’autres protocoles
  • Le flux est sa propre documentation, plus simple à relire des mois après qu’un mur de YAML imbriqué
  • Immense bibliothèque de nœuds communautaires et de flux partagés, la plupart des intégrations existent déjà
  • Assez léger pour tourner sur le même Raspberry Pi que le reste d’un petit homelab
  • Aucune authentification par défaut ; sécuriser l’éditeur est une étape manuelle que beaucoup zappent
  • Le modèle mental par flux demande un vrai temps d’adaptation, surtout venant du YAML
  • L’intégration Home Assistant dépend d’un paquet communautaire, pas d’un module officiel, donc parfois en retard
  • Les flux volumineux à nombreuses branches deviennent vite illisibles sans organisation en sous-flux

FAQ

Node-RED est-il gratuit ?

Oui, gratuit et open source sous Apache-2.0, sans fonctionnalité payante cachée. FlowFuse vend à part une plateforme hébergée bâtie autour de Node-RED, mais le cœur auto-hébergé reste gratuit.

Ai-je besoin de Node-RED si j’utilise déjà Home Assistant ?

Pas forcément. Pour de simples déclencheurs et actions, l’éditeur intégré de Home Assistant suffit. Node-RED devient utile dès que la logique dépasse ce que l’éditeur peut exprimer, ou pour relier HA à un système sans intégration native.

Node-RED est-il sécurisé par défaut ?

Non. L’installation Docker par défaut n’a aucune connexion sur l’éditeur : quiconque atteint le port peut tout consulter ou modifier. Activez l’authentification admin dans settings.js, et gardez-le derrière un reverse proxy ou un VPN.

Node-RED remplace-t-il entièrement les automatisations Home Assistant ?

Non, ce n’est pas l’objectif. La plupart font tourner les deux en parallèle : Home Assistant pour les règles du quotidien, Node-RED pour ce qui réclame plus de souplesse qu’un simple déclencheur/condition/action.

Node-RED est-il activement maintenu ?

Oui. La version 5.0 est sortie en juin 2026, le dépôt GitHub dépasse les 23 000 étoiles avec des commits réguliers, gouverné par l’OpenJS Foundation avec FlowFuse comme principal sponsor.

Node-RED vaut le coup dès qu’une automatisation Home Assistant lutte contre l’assistant graphique, ou que deux appareils qui devraient se parler ne le font pas. Associez-le à Home Assistant côté maison connectée, et à Frigate pour les événements caméra. Notre guide auto-hébergement homelab pour débutants couvre les bases avant d’empiler les automatisations.