Bienvenue dans la documentation frontend du projet etudiant.bj.
Cette section présente l'architecture des applications clientes de la plateforme, leur organisation, les technologies utilisées ainsi que les principes de développement retenus.
Le frontend regroupe l'ensemble des interfaces utilisateur permettant aux étudiants, enseignants, administrateurs et gestionnaires d'accéder aux différents services de la plateforme. Toutes les applications frontend communiquent exclusivement avec l'API Gateway, qui constitue le point d'entrée unique vers les services backend.
Le frontend permet aux utilisateurs d'accéder aux fonctionnalités de la plateforme à travers des interfaces web et mobiles adaptées à leurs besoins.
Il assure notamment :
L'architecture frontend est organisée autour de plusieurs applications clientes indépendantes appelées surfaces.
Les principales surfaces sont :
Ces applications partagent une couche commune de composants et communiquent uniquement avec l'API Gateway. La logique métier est exclusivement implémentée dans les microservices backend.
Cette organisation permet :
Les technologies utilisées côté frontend sont :
| Domaine | Technologie |
|---|---|
| Framework Web | Next.js 14 |
| Langage | TypeScript |
| Framework Mobile | React Native + Expo |
| Interface utilisateur | Tailwind CSS |
| Gestion des données serveur | TanStack Query |
| Base locale mobile | WatermelonDB |
| Application écran de salle | React (Vite) + Service Worker |
| Internationalisation | i18n |
| Communication avec le backend | API REST via API Gateway |
Le projet frontend est organisé sous forme de plusieurs applications partageant des bibliothèques communes.
Les principaux éléments sont :
Cette organisation favorise la mutualisation du code, la cohérence entre les applications et facilite les évolutions futures.
L'authentification des applications frontend repose sur une architecture Backend For Frontend (BFF).
Les principaux principes sont :
Toutes les applications frontend utilisent les API exposées par l'API Gateway.
Les principaux services accessibles sont :
Les échanges sont réalisés exclusivement via des API REST sécurisées.
Le frontend applique plusieurs principes de sécurité afin de protéger les utilisateurs et leurs données.
Ces principes comprennent notamment :
Cette documentation décrit l'ensemble des éléments nécessaires au développement des applications frontend de etudiant.bj.
Elle couvre notamment :
Les chapitres suivants détaillent chacun de ces aspects afin de faciliter la compréhension, le développement et la maintenance des applications frontend.
Pour consulter le document complet du frontend du projet :