Kuzzle un backend open-source pour l’IoT

Kuzzle une plateforme backend IoT puissante et performante
,

Kuzzle est une plateforme backend « prête à l’emploi »ready to use » conçue pour accélérer le développement d’applications mobiles, web et IoT un peu comme le ferait un Firebase. Elle dispose une API extensible avec des fonctionnalités clés telles que le stockage de données, la gestion des droits, l’authentification des utilisateurs et un moteur temps réel.

Kuzzle supporte les protocoles HTTP, WebSocket, MQTT et peut être étendu via des plugins.

SDKs compatibles Kuzzle

Elle inclut également une console d’administration et des SDKs (JS, Node, React, React Native, Vue.js, Angular, Flutter, .Net, Xamarin, Kotlin, Android, JVM, …) pour diverses plateformes.

Développée en France à Montpellier, cette solution offre un support professionnel pour faciliter les phases de développement et de production.

Les fonctionnalités

Logo de Kuzzle

Kuzzle répond à l’appelation BaaS (Backend As A Service) et propose donc toute une gamme de fonctions génériques prête à l’emploie :

  • API accessible par HTTP, Websocket et MQTT
  • Stockage de données NoSQL basée sur Elasticsearch avec tout un moteur pour faire du CRUD et possibilité de s’abonner à des évènements
  • Sécurité et authentification implémentée à l’aide d’un système RBAC avec 500+ stratégies d’authentifications
  • Moteurs en temps réel compatible WebSocket et MQTT avec fonction Pub/Sub
  • Scalabale grâce à son mode Cluster
  • Console d’administration
  • SDKs pour de nombreux langages
  • Extensible et personnalisable en Node.js

Avec une telle stack elle se veut adapter à un usage pour l’IoT. Par exemple on retrouvera sur le site du projet des cas d’usages comme :

  • Smart building
  • Smart City
  • Jumeaux numériques (Digital Twins)
  • Santé

A noter que cela n’a rien à voir avec Node Red, mais qu’avec un node MQTT, vous pouvez l’utiliser pour remonter facilement vos données dans Kuzzle.

Installation de Kuzzle

Kuzzle nécessite 2 services qui sont Elasticsearch et Redis. Il est également conseillé d’utiliser NVM pour s’assurer d’avoir la bonne version de Node.js. Enfin il vous faudra avoir Docker et Docker Compose prêt à l’emploi.

Cette plateforme utilise Kourou pour s’installer et gérer ses différentes instances. C’est un CLI créé par la même équipe et qui est dédié à Kuzzle et il s’installe via npm install -g kourou.

kourou app:scaffold playground

🚀 Kourou - Scaffolds a new Kuzzle application

generic
✔ Checking destination
✔ Prepare temporary folder
✔ Cloning template repository
✔ Copying template files
✔ Cleaning up

[✔] Scaffolding complete!
[✔] Use cd playground && docker compose up -d to start your Kuzzle stack.
Initialiser l'application

Comme toutes les app Node.js vous trouverez un fichier app.ts à la racine.

Si vous souhaitez lancer Kuzzle il vous suffira d’appliquer cette ligne

cd playground && docker compose up -d

Dès lors vous pouvez accéder aux informations de l’app via cette URL http://localhost:7512/.

Une console d’administration est également disponible qui vous permet de gérer vos données, utilisateurs et vos droits. Elle est développées en Vue.js et aucune données ne passe par les serveurs de l’équipe.

Créer une nouvelle Connexion Kuzzle

Vous pouvez ensuite commencer à travailler sur votre application ! Pour en savoir plus n’hésitez pas à vous rendre sur la documentation du projet.

2 réponses à “Kuzzle un backend open-source pour l’IoT”

  1. Avatar de psam44
    psam44

    Avec un petit travail d’adaptation (sur trois packages), il est possible de faire fonctionner le serveur backend sous Windows, sans besoin de mettre en œuvre du Docker.

  2. Avatar de psam44
    psam44

    Le plugin https://kuzzle-plugin-thing-manager.readthedocs.io est une alternative plus simple à intégrer et à exploiter que le plugin Device Manager de l’éditeur, pour la collecte des mesures des capteurs.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *