21aa7015f936ebdf94c84c91950fa47956850f66
				
			
			
		
	Gestion Scolaire
Application web Flask pour gérer les élèves, évaluations et notes dans un contexte scolaire.
Fonctionnalités
✅ Gestion complète des évaluations
- Groupes classes : Organisation des élèves par classe
- Évaluations : Création et gestion des contrôles/devoirs
- Exercices : Structure hiérarchique des évaluations
- Éléments de notation : Configuration fine des critères
- Saisie des notes : Interface intuitive pour la notation
🎯 Types de notation supportés
- Points : Notation classique (ex: 2.5/4 points)
- Score : Évaluation par compétences (0=non acquis, 1=en cours, 2=acquis, 3=expert, .=non évalué)
Installation et lancement
Avec uv (recommandé) :
# Installer les dépendances
uv sync
# Initialiser la base de données avec des données de démonstration
uv run flask --app app init-db
# Lancer en mode développement
uv run flask --app app run --debug
# Ou lancer sans mode debug
uv run flask --app app run
Architecture technique
Structure du code
├── app.py                 # Application Flask principale
├── models.py             # Modèles SQLAlchemy
├── forms.py              # Formulaires WTForms
├── commands.py           # Commandes CLI Flask
├── routes/
│   ├── assessments.py    # Routes pour les évaluations
│   ├── exercises.py      # Routes pour les exercices
│   └── grading.py        # Routes pour la saisie des notes
└── templates/            # Templates Jinja2 avec TailwindCSS
Modèles de données
- ClassGroup : Groupes de classes (ex: 6ème A, 5ème B)
- Student : Élèves assignés à un groupe classe
- Assessment : Évaluations liées à un groupe classe
- Exercise : Exercices composant une évaluation
- GradingElement : Éléments de notation avec barème et type
- Grade : Notes attribuées aux éléments de notation
Technologies utilisées
- Backend : Flask, SQLAlchemy, WTForms
- Frontend : TailwindCSS, Jinja2
- Base de données : SQLite
- Gestionnaire de paquets : uv
Description
				
					Languages
				
				
								
								
									HTML
								
								42.8%
							
						
							
								
								
									Python
								
								40.2%
							
						
							
								
								
									JavaScript
								
								15.1%
							
						
							
								
								
									CSS
								
								1.8%