- Ajout Cahier des Charges v1.3 - Ajout Workflow technique création de compte (v1.0) - Réorganisation docs avec préfixes numériques (00_, 01_, etc.) - Ajout données de test CSV - Modifications principales : * Champ téléphone unique (suppression mobile/fixe) * Inscription sans mot de passe (Parents + AM) * Création MDP par email après validation (7j) * Genre enfant obligatoire (H/F) * Date agrément obligatoire pour AM
73 lines
2.4 KiB
Markdown
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
|