Dans cet article je vous propose de découvrir ensemble n8n qui est un outil d'automatisation NoCode auto-hébergeable capable d'utiliser l'IA.
Qu’est-ce qu’un outil d’automatisation ?
Un outil d’automatisation, c’est un peu comme un assistant invisible qui exécute des tâches répétitives à votre place. L’idée, c’est de créer des des enchaînements d’actions, qui vont s’exécuter automatiquement en fonction d’un déclencheur. Ces outils offrent une interface en "noeuds" qui permet de gérer visuellement son workflow.
Un exemple d'utilisation, dans mon cas, est l'organisation et le traitement automatique de mes emails :
- On écoute l'arrivé d'un nouvel email dans la boite mail
- On catégorise cet email (Demande de sponsoring, Assistance technique...)
- Pour certaines catégories on génère une réponse automatique.
Un autre cas d'utilisation serait la mise en place d'un système d'onboarding dans une entreprise :
- On envoit un formulaire au nouvel arrivant.
- En fonction de ses réponse on lui donne accès à certains salon slack.
- Si c'est un développeur, on lui envoie les documents techniques.
- On lui crée un accès dans le CRM de l'entreprise.
Plutôt que de coder tout ça à la main, on le fait ici de manière visuelle, en connectant des noeuds entre eux. C’est donc un moyen plus simple de mettre en place des logiques métiers complexes, sans avoir à écrire une seule ligne de code — ou presque.
Pourquoi n8n ?
Des outils de ce genre, il en existe déjà plein : Make, Zapier, IFTTT…
Mais n8n se distingue sur plusieurs points qui le rendent particulièrement intéressant pour les développeurs.
Auto-hébergement
Le premier argument, c’est qu’on peut auto-héberger n8n très facilement. On peut le lancer en local sur sa machine avec une simple commande, ou bien l’installer sur un petit serveur pour le laisser tourner en permanence. De cette manière, il n’y a aucune limite d’exécution au niveau des actions.
Il est d'ailleurs développer en JavaScript et il est possible de le lancer avec docker ou dans un environnement JavaScript comme bun ou NodeJS.
bunx n8n
# ou avec npm
npx n8n
Par défaut, il utilisera une base de données SQLite pour sauvegarder votre configuration et vos workflows.
Extensible
Autre point fort : n8n est extensible.
On peut créer ses propres nœuds pour se connecter à des services non pris en charge nativement. L’API est bien pensée, et il existe déjà un grand nombre nœuds disponibles : Gmail, Discord, HTTP, Google Sheets, Slack, OpenAI, Mistral, etc.
Intelligence artificielle intégrée
Enfin, n8n dispose de noeud natif pour interragir avec les modèles d'intelligence artificielle. On peut même utiliser des modèles en local avec Ollama pour le traitement de données sensibles. Cette intégration rend possible des workflows beaucoup plus intelligents au-delà des simples “si… alors…” avec par exemple des classifier de texte ou des agents.