49ac6a4726611254ddf5677e003c9bb5844f780a
- app/seed.py, exécutable via python -m app.seed, idempotent et déterministe (graine fixe), sans donnée nominative réelle - Édition « Festival des Lucioles » 2026 : 120 bénévoles, 15 postes, 4 jours (montage/festival/démontage), 3 demi-journées, 8 compétences, ~100 créneaux, ~280 affectations actives, disponibilités tri-état - ~12 créneaux volontairement sous l'effectif minimal (trous d'effectif) - 3 affectations à avertissement (compétence absente, hors disponibilité, repos insuffisant), 0 violation bloquante - Passe de vérification finale via le moteur de validation : le résumé imprime le décompte des avertissements par règle et le nombre de bloquantes - covered_slots rendue publique dans validation.engine (réutilisée par le seed) - 2 tests (dataset réaliste, déterminisme/idempotence) ; 106 tests au total Fin du premier incrément backend. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017uUsRg7XzopkCPWimwg9ZM
Gestion des bénévoles
Application web de gestion des bénévoles pour un festival associatif. Backend FastAPI + PostgreSQL, frontend React (à venir), déploiement Docker Compose auto-hébergé.
Voir CLAUDE.md pour le vocabulaire du domaine, l'arborescence
et les conventions.
Démarrage rapide
cp .env.example .env
docker compose up --build
- API : http://localhost:8000
- Documentation interactive : http://localhost:8000/docs
Tests
docker compose run --rm backend uv run pytest
La base de test (benevoles_test) est créée automatiquement au premier
démarrage du conteneur PostgreSQL.
Structure
| Dossier | Rôle |
|---|---|
backend/ |
API FastAPI, modèle SQLModel, migrations Alembic |
frontend/ |
Interface React + Vite + TS + Tailwind (étape ultérieure) |
deploy/ |
Configuration de déploiement production |
.github/ |
Chaîne CI/CD (build → GHCR → SSH sur le VPS) |
Languages
Python
51.8%
TypeScript
47.6%
JavaScript
0.2%
Makefile
0.2%
Dockerfile
0.1%