From 342b4928f7839cf4be6ac5271002849570d5ba60 Mon Sep 17 00:00:00 2001 From: Giovanni-Josserand Date: Sun, 29 Mar 2026 15:06:20 +0200 Subject: [PATCH] add architecture part in README --- README.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/README.md b/README.md index 1dae14d..e70c615 100644 --- a/README.md +++ b/README.md @@ -128,3 +128,21 @@ Le débogage a été réalisé grâce à plusieurs outils et méthodes : - Tests des routes API avec Bruno - Logs côté backend pour analyser le comportement du serveur - Tests manuels réguliers lors du développement + +### 7. L'architecture + +Nous avons choisi d’adopter une architecture basée sur trois dépôts Git distincts, afin de séparer clairement les responsabilités et de faciliter la maintenance du projet : +- **Dépôt frontend** : contient le code de l’application développée en React +- **Dépôt backend** : contient le code de l’API développée avec Laravel +- **Dépôt Docker** : contient toute la configuration nécessaire à l’installation et au déploiement du projet sur n’importe quelle machine + +Ce troisième dépôt permet de déployer l’ensemble de l’application de manière reproductible grâce à Docker, en centralisant la configuration des services. +Notre environnement de déploiement repose sur plusieurs conteneurs Docker : +- **Backend (Laravel)** : gestion de la logique métier et de l’API +- **Frontend (React)** : interface utilisateur (version temporaire pour le déploiement) +- **Base de données (MariaDB)** : stockage des données +- **Nginx** : serveur web utilisé pour exposer les services et gérer les requêtes HTTP +- **Typesense** : moteur de recherche utilisé pour améliorer les performances des recherches +- **Backup** : conteneur dédié à la sauvegarde de la base de données +- **Serveur WebSocket (Laravel Reverb)** : gestion des communications en temps réel +