ÉTUDE DE CAS 03 / PROJET PUBLIC / FULL STACK

Technical Chat — Application de messagerie en temps réel

Une application de messagerie individuelle avec conversations conservées et échanges en temps réel.

Problème

Créer une messagerie ciblée avec accès aux comptes, annuaire des utilisateurs et transmission fiable des messages en temps réel.

Architecture

Une API Spring Boot gère l'inscription, l'authentification, la validation et l'historique des conversations stocké dans MongoDB. WebSocket/STOMP transmet les messages en direct. Un client Angular propose des vues de conversation adaptées aux écrans mobiles et aux ordinateurs.

Ce que j'ai développé

L'application comprend une authentification JWT sans session, Spring Security, la présence en ligne et hors ligne, un annuaire des utilisateurs, des conversations individuelles et une gestion structurée des erreurs REST et de messagerie.

Détails techniques

Le backend suit une architecture en couches avec contrôleurs, services, repositories, DTO et mappers, ainsi que Lombok et MapStruct. Le client utilise TypeScript et Angular. CORS et la validation des requêtes complètent l'API destinée au navigateur.

Technologies

  • Java 21
  • Spring Boot
  • Spring Security
  • MongoDB
  • WebSocket / STOMP
  • JWT
  • Angular
  • Maven
  • Lombok
  • MapStruct
  • REST API
  • Validation
  • CORS

Code source

Le code source de ce projet est public sur GitHub.

Voir sur GitHub

PROJET SUIVANT

University SSO

Une plateforme universitaire où étudiants, personnel, enseignants et administrateurs se connectent une seule fois via Keycloak pour accéder à la restauration, au foyer, aux réservations, aux abonnements et aux réclamations.