 AdamThomasandClaude Sonnet 5
|
c9dda65361
|
Frontend : consommation de l'API CRUD (matrice, affectations, validation)
Remplace le magasin d'état fabriqué par une vraie couche API typée, alignée
sur le back-end (Étape 5) :
- src/api/ : schema.ts (miroir de backend/app/api/schemas.py), client HTTP,
implémentation mock en mémoire (même surface + portage du moteur de
validation), sélection mock/http via VITE_API_MODE, hooks React Query
(lectures + mutations avec invalidation).
- Grille des besoins ← GET /matrix ; treillis de colonnes dérivé des
créneaux réels (plus de plages figées).
- Panneau d'affectation ← GET /assignments?shift_id, POST /assignments/validate
par candidat (alertes bloquantes / avertissements du moteur),
POST / PATCH / DELETE /assignments.
- Vue par bénévole ← volunteers + shifts + assignments (surcharge / oubliés
calculés côté client).
- Confirmations (ex-« Publication ») ← affectations PROPOSED ; publication
versionnée et emails signalés hors périmètre.
- Mobiles ← assignments filtrées ; confirmation = PATCH ; pointage référent
local (hors périmètre).
- Configuration ← positions & shifts CRUD (min/idéal, ajout/retrait),
volunteers CRUD dont suppression RGPD ; messages = maquette locale.
- i18n mis à jour, aucun texte d'interface en dur.
- Vérifs : build tsc + vite, eslint (0 problème), npm run smoke (API mock +
rendu headless des 6 écrans avec données préchargées).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AwswqSChc3Rwtu61pRXiY2
|
2026-09-09 23:16:38 +02:00 |
|
 AdamThomasandClaude Sonnet 5
|
ac469f0cd1
|
Frontend : intégration du design Claude Design (6 écrans)
Portage du projet « Bénévoles Festival.dc.html » en implémentation statique
pilotée par un jeu de démonstration déterministe (portage du générateur du
design : 15 postes, 64 bénévoles, ~209 affectations).
- Système visuel néo-brutaliste : palette + primitives Tailwind, polices
Archivo / DM Mono, primitives dans components/ui.tsx.
- Domaine (aligné CLAUDE.md) : types, jours/plages, moteur de validation
(mêmes codes BLOCKING/WARNING que le back-end), sélecteurs, différentiel
de publication.
- État applicatif : PlanningProvider (reducer) — affecter / désaffecter /
publier / confirmer / éditer besoins et bénévoles / import simulé / pointage.
- Écrans : 01 Grille des besoins + panneau d'affectation (candidats triés,
alertes), 02 Vue par bénévole, 03 Publication, 04 Mobile bénévole,
05 Mobile référent, 06 Configuration (4 sous-onglets).
- i18n : aucun texte d'interface en dur, locales/fr.json.
- Vérifs : build tsc + vite, eslint (0 erreur), rendu headless des 6 écrans
(npm run smoke).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AwswqSChc3Rwtu61pRXiY2
|
2026-09-09 23:16:38 +02:00 |
|