# 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`](./CLAUDE.md) pour le vocabulaire du domaine, l'arborescence et les conventions. ## Démarrage rapide ```bash cp .env.example .env docker compose up --build ``` - Frontend : http://localhost:5173 - API : http://localhost:8000 - Documentation interactive : http://localhost:8000/docs Le frontend démarre en mode `mock` (jeu de démonstration en mémoire, aucun backend requis). ### Vraie instance, sans jeu de démo ```bash docker compose up -d db backend docker compose run --rm backend uv run alembic upgrade head docker compose run --rm backend uv run python -m app.bootstrap \ --name "Festival 2026" --start 2026-07-01 --end 2026-07-04 \ --email coordination@monfestival.fr --password "un-mot-de-passe-solide" ``` La commande crée une édition vierge, le premier compte coordination (connexion par mot de passe) et 3 créneaux types par défaut, puis affiche l'UUID de l'édition. Renseigner alors dans `.env` : ``` VITE_API_MODE=http VITE_EDITION_ID= ``` puis `docker compose up frontend`. ### Jeu de démonstration (optionnel) ```bash docker compose run --rm backend uv run python -m app.seed ``` 120 bénévoles fictifs, 15 postes, 4 jours. Identifiants affichés en fin de commande. ## Tests ```bash 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 (service `frontend`) | | `deploy/` | Configuration de déploiement production | | `.github/` | Chaîne CI/CD (build → GHCR → SSH sur le VPS) |