Ecodrop
Une API REST en Java pour gérer et gamifier le tri sélectif.
Java
Programmation Orientée Objets
Tomcat
Serveur Web
OAuth2 / JWT
Authentification

Authentification
Le système délègue l'identification à des fournisseurs de confiance (Google, GitHub, GitLab, Discord) via OAuth2.
Logique métier
Suivi en temps réel de l'état des points de collecte (avec détection automatique des surcharges à plus de 80%) et système de récompenses attribuant des points aux utilisateurs.
Déploiement
Déploiement optimisé via un build Docker multi-étapes qui automatise la génération de la documentation statique (Pandoc), soutenu par une suite de tests API sous Bruno.

Négociation de contenu
L'API est flexible et capable de consommer ainsi que de produire des données nativement aux formats JSON et XML selon les besoins du client HTTP.
Analyse réflexive
Une analyse honnête du parcours, des obstacles rencontrés et des compétences acquises durant ce projet.
Mon rôle
Co-conception et co-développement de l'API REST en binôme : modélisation des données, implémentation des endpoints, mise en place de l'authentification OAuth2/JWT et du déploiement Docker.
Défis & Solutions
Le défi principal a été d'implémenter une authentification OAuth2 robuste avec gestion de tokens JWT depuis zéro sur un serveur Tomcat, sans framework haut niveau, tout en gérant la négociation de contenu JSON/XML.
Apprentissages
J'ai appris à construire une API REST complète en Java pur avec Tomcat, à implémenter OAuth2 manuellement, et à mettre en place un pipeline de déploiement Docker multi-étapes avec génération automatique de documentation.
Compétences transversales
Coordination efficace à deux sur l'ensemble du cycle de développement, de la conception initiale au déploiement en production, avec une répartition claire des responsabilités.
Mise en place d'une suite de tests API sous Bruno et d'une documentation exhaustive pour garantir la fiabilité et la maintenabilité du service.