petitspas/docs/README-ARCHITECTURE.md
Julien Martin 48b01ed3fe docs: Ajout de la documentation complète (API, Database, Audit)
- Création du dossier docs/ pour centraliser la documentation
- Ajout de API.md : documentation complète de tous les endpoints
- Ajout de DATABASE.md : schéma complet de la base de données
- Ajout de AUDIT.md : audit du projet YNOV
- Déplacement des README-ARCHITECTURE.md et README-DEPLOYMENT.md vers docs/
- Ajout d'un README.md index dans docs/
2025-11-24 21:39:01 +01:00

73 lines
2.4 KiB
Markdown

# 🏗️ Architecture du projet P'tits Pas
## 📁 Structure du projet
Ce projet est organisé en **3 dépôts Git distincts** :
- **`ptitspas-frontend`** : Application Flutter (interface utilisateur)
- **`ptitspas-backend`** : API NestJS (serveur backend)
- **`ptitspas-database`** : Configuration PostgreSQL et migrations
## 🌍 Deux environnements supportés
### 🚀 **Environnement de production (serveur)**
- **Localisation** : `/home/ynov/project/` sur le serveur
- **Configuration** : `docker-compose.yml` + `.env`
- **Domaine** : `https://ynov.ptits-pas.fr`
- **Reverse proxy** : Traefik avec SSL automatique
- **Gestion** : Déploiement automatique via webhooks Gitea
### 💻 **Environnement de développement (local)**
- **Configuration** : `docker-compose.dev.yml` + `.env.example` dans chaque dépôt
- **Accès** : Ports locaux (3000, 8000, 8080, 5432)
- **Hot reload** : Modifications de code prises en compte instantanément
- **Base locale** : PostgreSQL indépendante avec PgAdmin
## 🏃‍♂️ Guide de démarrage développeur
### 1. **Backend** (à démarrer en premier)
```bash
git clone <url-backend>
cd ptitspas-backend
cp .env.example .env
docker compose -f docker-compose.dev.yml up -d
```
**Accès** : http://localhost:3000/api
### 2. **Frontend**
```bash
git clone <url-frontend>
cd ptitspas-frontend
cp .env.example .env
docker compose -f docker-compose.dev.yml up -d
```
**Accès** : http://localhost:8000
### 3. **PgAdmin** (inclus avec le backend)
**Accès** : http://localhost:8080
- Email : admin@localhost
- Mot de passe : admin123
## 🔄 Workflow de développement
1. **Développer localement** avec les `docker-compose.dev.yml`
2. **Tester les modifications** sur http://localhost:8000
3. **Commiter et pousser** dans les dépôts respectifs
4. **Déploiement automatique** sur le serveur via webhooks
## 🗂️ Fichiers de configuration
| Fichier | Usage | Localisation |
|---------|-------|--------------|
| `docker-compose.yml` | Production (serveur) | `/home/ynov/project/` |
| `docker-compose.dev.yml` | Développement (local) | Chaque dépôt |
| `.env` | Variables production | Serveur uniquement |
| `.env.example` | Template développement | Chaque dépôt |
## 🔒 Sécurité
- ✅ Fichiers `.env` **non versionnés** (ajoutés au `.gitignore`)
- ✅ Variables sensibles **externalisées**
- ✅ Configurations **séparées** dev/prod
- ✅ SSL automatique en production via Let's Encrypt