AdamThomasandClaude Opus 5.5 c49ce520e3
ci-cd / build-backend (push) Successful in 33s
ci-cd / build-frontend (push) Successful in 18s
ci-cd / deploy (push) Successful in 12s
Type de paiement à montant libre (pensé pour le mécénat)
FormPaymentOption.free_amount (migration 0021) : case « Montant libre »
sur l'écran Inscriptions ; le montant configuré devient le minimum et le
bénévole saisit le sien sur le formulaire public (payment_amount, virgule
ou point, 2 décimales max, plafond 10 000 € contre une faute de frappe —
422 form.invalid_free_amount sinon). Validé côté client avant l'envoi,
le serveur restant seul juge. Le montant choisi est celui du checkout
SumUp, recopié sur la fiche, l'email de confirmation et le cerfa.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 13:49:27 +02:00
2026-09-29 18:31:08 +02:00
2026-09-16 21:49:34 +02:00
2026-09-16 21:49:34 +02:00
2026-09-16 21:49:34 +02:00
2026-09-16 21:09:28 +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)
.gitea/workflows/ 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%