Logo Lanfrica

devflowws/clean-togo-backend

Domain:

digital infrastructureenvironment and energy

Record type:

software
Creator:
dev
Host:
# CleanTogo — Backend API REST de la plateforme de gestion de la collecte des déchets ménagers à Lomé. Spring Boot 4, Java 17, PostgreSQL, authentification JWT. Trois clients consomment cette API : l'espace d'administration web (Angular), l'application mobile foyer et l'application mobile chauffeur (Flutter). ## Prérequis - Java 17 ou supérieur - PostgreSQL 15 ou supérieur - Maven (inclus via `mvnw`, aucune installation nécessaire) ## Démarrage sur une machine neuve ### 1. Créer le rôle et la base Une seule fois, en tant que superutilisateur PostgreSQL : ```bash psql -U postgres -h localhost -f db/00_init_role_database.sql ``` Ce script crée le rôle applicatif `CleanAdmin` et la base `CleanTogoDB`. Il ne crée **ni table ni compte utilisateur** : le schéma est généré par Hibernate au démarrage. C'est la confusion la plus fréquente sur ce projet — le « CleanAdmin » de ce script est un rôle PostgreSQL, pas l'administrateur de l'application. ### 2. Lancer le backend ```bash ./mvnw spring-boot:run ``` L'API écoute sur `localhost`. Documentation interactive : `localhost`. ### 3. Se connecter Au premier démarrage, si la base ne contient aucun administrateur, le backend en crée un et le signale dans le journal : ``` INFO InitialisationAdministrateur : Premier administrateur cree : admin@cleantogo.tg ``` | | | |---|---| | Adresse | `admin@cleantogo.tg` | | Mot de passe | `Admin@2026` | Le traitement est idempotent : dès qu'un administrateur existe, quel que soit son email, il ne fait plus rien. Il peut donc tourner à chaque démarrage sans risque. Si l'adresse choisie appartient déjà à un client ou à un chauffeur, aucun compte n'est créé et le journal l'indique en erreur : créer un doublon rendrait la connexion imprévisible. ## Configuration Tout se surcharge par variables d'environnement, sans toucher à `application.properties`. Les valeurs ci-dessous sont les défauts du poste de développement. ### Base de donnée …