Projet réalisé avec Node.js, Express, MongoDB, Docker et React.
student-grade-api/
├── auth-service/ → Port 3001 — Inscription, Connexion, JWT
├── student-service/ → Port 3002 — CRUD Étudiants & Matières
├── grade-service/ → Port 3003 — Notes & Bulletins
├── gateway/ → Port 3000 — Point d'entrée unique
├── frontend/ → Port 80 — Interface React
└── docker-compose.yml
- Docker Desktop installé et lancé
docker-compose up --builddocker-compose downdocker-compose down -vAttendre que tous les services démarrent, puis ouvrir :
- Frontend → http://localhost
- API Gateway → http://localhost:3000
| Méthode | URL | Description |
|---|---|---|
| POST | /auth/register | Créer un compte |
| POST | /auth/login | Se connecter |
| GET | /students | Liste des étudiants |
| POST | /students | Créer un étudiant |
| GET | /students/:id | Détail d'un étudiant |
| PUT | /students/:id | Modifier un étudiant |
| DELETE | /students/:id | Supprimer un étudiant |
| GET | /subjects | Liste des matières |
| POST | /subjects | Créer une matière |
| DELETE | /subjects/:id | Supprimer une matière |
| POST | /grades | Ajouter une note |
| GET | /grades/bulletin/:studentId | Bulletin d'un étudiant |
| GET | /grades/subject/:subjectId | Notes par matière |
- Node.js + Express — Backend microservices
- MongoDB — Base de données NoSQL
- JWT — Authentification sécurisée
- Docker + Docker Compose — Containerisation
- React — Frontend
- Nginx — Serveur web pour le frontend
- Afaf Messak
- Ennouari Fatima
- Fatihi khadija