AdamThomasandClaude Sonnet 5 fb6e26eddb Front : les indications d'usage passent en bulle d'aide (icône « ? »)
Les explications sur comment utiliser un écran (grille des besoins, vue
bénévoles, artistes, import, disponibilités, créneaux types, seuils,
notification par email…) étaient affichées en permanence dans la page,
prenant de la place pour un contenu qu'on ne lit qu'une fois. Elles passent
dans une bulle affichée au survol (ou au focus clavier/tactile) d'un petit
repère « ? » posé à côté du titre ou du champ concerné.

- `HelpTip` (frontend/src/components/ui.tsx) : nouveau composant partagé,
  cohérent avec le design (bordures franches, pas d'arrondi) ; `side`
  ('top'/'bottom') pour éviter que la bulle ne sorte du cadre visible selon
  que le repère est en haut ou en bas de son conteneur.
- Appliqué à GrillePage, VolunteerViewPage, ConfigArtists, ConfigVolunteers
  (import, ajout manuel, disponibilités), ConfigGrid, ConfigRules, ConfigMail.
- Aucun texte déplacé n'a changé : mêmes clés i18n, seul l'endroit où elles
  s'affichent change.

Laissé en l'état (pas des indications d'usage mais des messages d'état) :
bannières identifiants de démo, liens de connexion en dev, états vides, et
la description des rôles (contenu propre des cartes, pas un mode d'emploi).

Vérifié : typecheck, lint, build, smoke (7 routes) OK.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017uUsRg7XzopkCPWimwg9ZM
2026-09-15 20:03:41 +02:00

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

make demo     # base + backend + frontend, jeu de démonstration chargé
make blank    # idem, mais édition vierge + 1er compte coordination

Chaque commande construit les images, applique les migrations, prépare les données, bascule le frontend sur l'API réelle (.env) et affiche les identifiants de connexion.

make blank accepte des paramètres :

make blank EMAIL=moi@festival.fr PASSWORD=mon-mot-de-passe-solide \
          NAME="Festival 2026" START=2026-07-01 END=2026-07-04

Le jeu de démo : 120 bénévoles fictifs, 15 postes, 4 jours. L'édition vierge : une édition + un compte coordination (mot de passe) + 3 créneaux types.

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 (service frontend)
deploy/ Configuration de déploiement production (compose, Caddy, runbook)
.gitlab-ci.yml Chaîne CI/CD (tests → build → SSH sur le VPS)
S
Description
No description provided
Readme
1.8 MiB
Languages
Python 51.8%
TypeScript 47.6%
JavaScript 0.2%
Makefile 0.2%
Dockerfile 0.1%