Skip to content

Christ0u/BasicFitSmartLocker

Repository files navigation

BasicFitSmartLocker

BasicFitSmartLocker est une application web Node.js dédiée à la gestion de casiers automatisés pour BasicFit, développée dans le cadre du Brevet de Technicien Supérieur Systèmes Numériques option Informatique et Réseaux.

Le projet initial reposait sur une infrastructure matérielle spécifique, comprenant notamment des casiers équipés de serrures à solénoïde pilotées par un ESP32.

Cette version du projet vise à proposer un environnement fonctionnel de gestion de casiers, indépendant des contraintes matérielles et infrastructurelles d’origine.

Le rapport complet de ce projet est disponible ici.

Prérequis

Installation

# Cloner le dépôt Git
git clone https://github.com/Christ0u/BasicFitSmartLocker.git

# Configurer les variables d'environnement
cp .env.example .env

# Installer les dépendances
npm install

Démarrage de l'application

# Démarrer les services backend Docker
docker compose up -d --build

# Démarrer l'application web
npm run BasicFitApp

Services backends disponibles

  • Base de données MySQL : port 3307
  • Broker MQTT Mosquitto : port 1884

Voir le fichier .env.example pour obtenir les informations d'identifications correspondantes.

Interractions avec les casiers

# Lancer un terminal pour piloter le service Mosquitto
docker exec -it BasicFitSmartLocker_MQTT /bin/sh
# Verrouiller un casier
mosquitto_pub -h localhost -t "basicfitlockers/locker1/depositstate" -m 1 -r
mosquitto_pub -h localhost -t "basicfitlockers/locker2/depositstate" -m 1 -r
mosquitto_pub -h localhost -t "basicfitlockers/locker3/depositstate" -m 1 -r
mosquitto_pub -h localhost -t "basicfitlockers/locker4/depositstate" -m 1 -r

# Déverrouiller un casier
mosquitto_pub -h localhost -t "basicfitlockers/locker1/depositstate" -m 0 -r
mosquitto_pub -h localhost -t "basicfitlockers/locker2/depositstate" -m 0 -r
mosquitto_pub -h localhost -t "basicfitlockers/locker3/depositstate" -m 0 -r
mosquitto_pub -h localhost -t "basicfitlockers/locker4/depositstate" -m 0 -r

Contributeurs

  • Christopher GERARD (Christ0u)
  • Lucas SCHULER
  • Théo CHIANELLA

About

Application web de gestion de casiers automatisés développée sous Node.js pour BasicFit dans le cadre du Brevet de Technicien Supérieur Systèmes Numériques option Informatique et Réseaux

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors