Description du projet
Evenix est une application web développée dans le cadre du BTS SIO. Le projet consiste à créer une plateforme permettant de gérer des événements (création, consultation, inscription) avec une partie administration et une partie utilisateur. L’objectif principal est de mettre en place une solution complète avec un backend sécurisé, une base de données structurée et une interface web claire et dynamique.
Missions réalisées
- Conception et cadrage du projet
- Analyse du besoin et définition du périmètre (utilisateurs, événements, inscriptions, rôles)
- Rédaction des règles métier (droits d’accès, validations, contraintes de données)
- Organisation du projet et suivi des tâches (versioning Git)
- Mise en place de l’architecture backend (Spring Boot)
- Architecture en couches : Controllers → Services → Repositories
- Création d’une API REST pour exposer les fonctionnalités principales
- Utilisation de DTO + validation pour sécuriser et contrôler les entrées
- Gestion des données et modélisation MySQL
- Conception du schéma relationnel (tables + relations : utilisateurs, événements, inscriptions…)
- Mise en place des entités JPA (relations, contraintes, clés étrangères)
- Gestion des opérations CRUD avec Hibernate et requêtes adaptées
- Sécurité : authentification JWT et gestion des rôles
- Implémentation de l’authentification via JWT (login, génération, validation)
- Protection des routes selon les rôles (ex : utilisateur / administrateur)
- Gestion des erreurs et des réponses HTTP (401, 403, 404, etc.)
- Développement de l’interface web (Front)
- Pages React/NodeJS pour la navigation et la présentation des événements
- Requêtes API en JavaScript (
fetch) : connexion, affichage, création, suppression… - Interface dynamique : affichage conditionnel, formulaires, actualisation des listes
- Tests, débogage et validation
- Tests des endpoints avec Postman (scénarios OK / erreurs)
- Correction de bugs (validation, sécurité, cohérence des données)
- Amélioration progressive : lisibilité du code, séparation des responsabilités, refactoring
- Documentation et livrables (portfolio BTS)
- Rédaction d’une documentation technique (installation, configuration, lancement)
- Production de schémas : diagramme de classes, diagrammes de séquence (ex : Connexion JWT)
- Préparation de preuves (captures, endpoints, exemples de données)
Compétences développées
- Techniques : Java, Spring Boot, API REST, MySQL, JPA, React/NodeJS
- Sécurité : JWT, gestion des rôles, sécurisation des endpoints, bonnes pratiques
- Conception : modélisation BDD, architecture en couches, DTO, règles métier
- Qualité : tests API, débogage, refactoring, gestion d’erreurs HTTP
- Organisation : Git/GitHub, travail en projet, documentation, livrables BTS
Ce projet m’a permis de consolider mes compétences en développement web full-stack, en mettant l’accent sur la sécurisation d’une API, la modélisation des données et la réalisation de livrables structurés pour le portfolio BTS SIO.