Freshtime - Logiciel en ligne
Infrastructure cloud complète pour une solution de suivi des températures via des capteurs.
Freshtime est un projet lancé par l'entreprise Business Human Connect
L'entreprise s'est lancé dans la fabrication de capteurs spécifiques destinée au suivi de plusieurs métriques pour des clients de types restaurateur.
Pour aller avec ces capteurs, l'entreprise a eu besoin d'une solution Cloud complète, et elle s'est tourné vers mon expertise.
Dans les grandes lignes, la solution développée gère :
- La reception des mesures des capteurs avec le protocole MQTT
- Une plateforme logicielle en ligne permettant aux clients d'acceder aux différentes mesures de leurs appareils
- Un système d'alertes pour indiquer aux utilisateurs des mesures anormales, suivant leurs paramétrages.
- Un système de paiement par cellule sur la plateforme, qui permet entre autre de définir la durée de stockage des mesures
- Affichages des mesures customisable, avec vue en graphique et export sous plusieurs formats
- Système de tracking GPS installé en parallèle et interfacé avec le système développé
- Interfacage avec le système de capteur Legacy de l'entreprise
La solution fonctionne sur un serveur VPS, et est un ensemble d'applications et micro-services. Pour simplifier la stack :
- Le serveur tourne sur Debian 12 avec comme interface de gestion ISPConfig
- La base de donnée est MariaDB
- L'API à destination des applications clients est en PHP, Symfony 6
- La plateforme "frontend" est développé avec ReactJS
- Les applications mobiles sont développés avec Capacitor
- Les micro-services sont développés en PHP pur, et sont gérés sur le serveur via le Deamon Supervisord
- La communication entre les micro-services et le point d'entrée pour les capteurs est géré par RabbitMQ (MQTT côté capteur, AMQP côté interne)
Cette solution est de loin la solution la plus complexe que j'ai eu à développer, et je l'ai réalisé seul sans équipe, de l'installation et gestion du serveur jusqu'au Design UI et UX de la plateforme.
Captures d'écran de la plaforme via laquelle les utilisateurs accèdent à leur données