feat: add new initialisation db mode
This commit is contained in:
95
README.md
95
README.md
@@ -73,18 +73,54 @@ uv sync
|
||||
cp .env.example .env
|
||||
# Modifier .env avec SECRET_KEY (minimum 32 caractères obligatoire)
|
||||
|
||||
# 4. Initialiser la base de données avec données de démonstration
|
||||
# 4. Initialiser la base de données (voir modes ci-dessous)
|
||||
uv run flask --app app init-db
|
||||
|
||||
# 5. Lancer l'application en mode développement
|
||||
uv run flask --app app run --debug
|
||||
```
|
||||
|
||||
### 🎯 Modes d'Initialisation de la Base de Données
|
||||
|
||||
**Notytex** propose **3 modes d'initialisation** adaptés aux différents contextes d'usage :
|
||||
|
||||
#### 🌱 **Mode Minimal** (par défaut) - Début d'année scolaire
|
||||
```bash
|
||||
uv run flask --app app init-db --mode minimal
|
||||
# ou simplement
|
||||
uv run flask --app app init-db
|
||||
```
|
||||
- **Usage** : Début d'année scolaire, base vierge
|
||||
- **Contenu** : Configuration de base uniquement
|
||||
- **Idéal pour** : Démarrer une nouvelle année avec ses vraies classes et élèves
|
||||
|
||||
#### 📚 **Mode Milieu d'Année** - Données réalistes complètes
|
||||
```bash
|
||||
uv run flask --app app init-db --mode midyear
|
||||
```
|
||||
- **Usage** : Tester l'application avec des données représentatives
|
||||
- **Contenu** :
|
||||
- **5 classes** avec 142 élèves au total (25-32 élèves par classe)
|
||||
- **30 évaluations** créées (6 par classe sur 2 trimestres)
|
||||
- **4 évaluations entièrement corrigées** par classe (Trimestre 1)
|
||||
- **2 évaluations partiellement corrigées** par classe (Trimestre 2)
|
||||
- **Notes réalistes** générées automatiquement
|
||||
- **Idéal pour** : Démonstrations, formations, tests de performance
|
||||
- **Volumétrie** : Correspond aux spécifications du CLAUDE.md (milieu de 2ème trimestre)
|
||||
|
||||
#### 🧪 **Mode Démonstration** - Données minimales
|
||||
```bash
|
||||
uv run flask --app app init-db --mode demo
|
||||
```
|
||||
- **Usage** : Tests rapides et démonstrations simples
|
||||
- **Contenu** : 2 classes, 5 élèves, 1 évaluation simple
|
||||
- **Idéal pour** : Premiers pas avec l'application
|
||||
|
||||
### 🌐 Accès à l'Application
|
||||
|
||||
- **URL de développement** : http://localhost:5000
|
||||
- **Interface** : Dashboard avec navigation intuitive
|
||||
- **Données de test** : Exemples d'évaluations et élèves préchargés
|
||||
- **Interface** : Dashboard avec navigation intuitive et indicateurs de progression
|
||||
- **Données** : Variables selon le mode d'initialisation choisi
|
||||
|
||||
## 🏗️ Architecture Technique
|
||||
|
||||
@@ -225,15 +261,19 @@ uv run pytest tests/test_repositories.py -v
|
||||
# 1. Configuration initiale
|
||||
cp .env.example .env
|
||||
# Éditer .env avec SECRET_KEY obligatoire
|
||||
uv run flask --app app init-db
|
||||
|
||||
# 2. Développement avec rechargement automatique
|
||||
# 2. Choisir le mode d'initialisation selon le contexte
|
||||
uv run flask --app app init-db --mode minimal # Début d'année
|
||||
uv run flask --app app init-db --mode midyear # Tests avec données complètes
|
||||
uv run flask --app app init-db --mode demo # Démonstration rapide
|
||||
|
||||
# 3. Développement avec rechargement automatique
|
||||
uv run flask --app app run --debug
|
||||
|
||||
# 3. Validation avant commit
|
||||
# 4. Validation avant commit
|
||||
uv run pytest
|
||||
|
||||
# 4. Analyse des logs en temps réel
|
||||
# 5. Analyse des logs en temps réel
|
||||
tail -f logs/notytex.log | jq '.' # Pour formater le JSON
|
||||
```
|
||||
|
||||
@@ -286,9 +326,46 @@ tail -f logs/notytex.log | jq '.' # Pour formater le JSON
|
||||
}
|
||||
```
|
||||
|
||||
## 🎓 Exemple d'Utilisation Complète
|
||||
## 🎓 Exemples d'Utilisation Complète
|
||||
|
||||
### 📝 Scénario : Création et Correction d'une Évaluation
|
||||
### 🌱 **Scénario Début d'Année** - Mode Minimal
|
||||
|
||||
```bash
|
||||
# Initialisation pour démarrer l'année scolaire
|
||||
uv run flask --app app init-db --mode minimal
|
||||
```
|
||||
|
||||
**Étapes typiques :**
|
||||
1. **Configuration initiale** : Année scolaire 2025-2026 automatiquement définie
|
||||
2. **Création des classes** : Ajouter manuellement 6ème A, 5ème B, etc.
|
||||
3. **Import des élèves** : Saisir ou importer les listes d'élèves réelles
|
||||
4. **Première évaluation** : Créer le premier contrôle de l'année
|
||||
|
||||
### 📚 **Scénario Milieu d'Année** - Mode Données Complètes
|
||||
|
||||
```bash
|
||||
# Initialisation avec données réalistes de milieu d'année
|
||||
uv run flask --app app init-db --mode midyear
|
||||
```
|
||||
|
||||
**Contenu automatiquement généré :**
|
||||
- **Classes** : 6ème A (28 élèves), 6ème B (25 élèves), 5ème A (30 élèves), 5ème B (27 élèves), 4ème A (32 élèves)
|
||||
- **Évaluations Trimestre 1** (100% corrigées) :
|
||||
- Contrôle Nombres entiers (coefficient 2.0)
|
||||
- Évaluation Géométrie (coefficient 2.5)
|
||||
- Contrôle Fractions (coefficient 3.0)
|
||||
- Devoir Maison Recherche (coefficient 1.5)
|
||||
- **Évaluations Trimestre 2** (partiellement corrigées) :
|
||||
- Contrôle Proportionnalité (coefficient 2.5)
|
||||
- Évaluation Statistiques (coefficient 2.0)
|
||||
|
||||
**Utilisation immédiate :**
|
||||
1. **Dashboard** : Aperçu des 142 élèves, 30 évaluations, 5 classes
|
||||
2. **Indicateurs de progression** : Visualisation des corrections en cours
|
||||
3. **Analyse des résultats** : Statistiques et graphiques sur les évaluations terminées
|
||||
4. **Saisie de notes** : Continuer la correction des évaluations partielles
|
||||
|
||||
### 📝 **Scénario Création d'Évaluation** - Workflow Standard
|
||||
|
||||
1. **🏗️ Création de l'évaluation**
|
||||
|
||||
|
||||
Reference in New Issue
Block a user