style: formater GOAL.md et TODO.md (prettier)

This commit is contained in:
devcodetools committed 2026-09-21 17:42:19 +02:00
1 parent 6981da23f1
commit 2ec13f5895
2 files changed
+8 -3

No files matched your search

-1
View File
@@ -34,4 +34,3 @@ Les composants d'accès aux données devront être le plus génériques possible
- Docker via docker-compose - Docker via docker-compose
- Volumes managés - Volumes managés
+8 -2
View File
@@ -26,7 +26,7 @@ Application web **SPA + PWA** : Flashcards affiche des cartes (questions/répons
> Chaque exigence doit être satisfaite avant de considérer la feature terminée. > Chaque exigence doit être satisfaite avant de considérer la feature terminée.
| Ref | Exigence | Critère d'acceptation | | Ref | Exigence | Critère d'acceptation |
|-----|----------|------------------------| | ---- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| F-01 | Afficher une carte au hasard | Un clic sur « Jouer » affiche UNE carte tirée aléatoirement de l'ensemble des cartes | | F-01 | Afficher une carte au hasard | Un clic sur « Jouer » affiche UNE carte tirée aléatoirement de l'ensemble des cartes |
| F-02 | Dans un tirage aléatoire, la question est visible et la réponse cachée | Le terme/question s'affiche ; la réponse ne s'affiche pas | | F-02 | Dans un tirage aléatoire, la question est visible et la réponse cachée | Le terme/question s'affiche ; la réponse ne s'affiche pas |
| F-03 | Révéler la réponse | Un clic (ou action) déroule/affiche la réponse cachée ; un second clic la masque | | F-03 | Révéler la réponse | Un clic (ou action) déroule/affiche la réponse cachée ; un second clic la masque |
@@ -45,7 +45,7 @@ Application web **SPA + PWA** : Flashcards affiche des cartes (questions/répons
### Entité `Card` ### Entité `Card`
| Champ | Type | Contrainte | Description | | Champ | Type | Contrainte | Description |
|-------------|------------|-------------------|------------------------------------------| | ----------- | ---------- | ----------- | ---------------------------------------------- |
| `id` | string/INT | unique (PK) | Identifiant stable de la carte | | `id` | string/INT | unique (PK) | Identifiant stable de la carte |
| `question` | string | requis | Terme ou question affiché | | `question` | string | requis | Terme ou question affiché |
| `response` | string | requis | Réponse cachée puis révélée | | `response` | string | requis | Réponse cachée puis révélée |
@@ -118,6 +118,7 @@ Une feature est « faite » si et seulement si :
> Ordre d'exécution recommandé. Passer à la phase suivante uniquement si la DoD de la phase courante est remplie. > Ordre d'exécution recommandé. Passer à la phase suivante uniquement si la DoD de la phase courante est remplie.
### Phase 0 — Scaffolding ### Phase 0 — Scaffolding
- [ ] Initialiser le projet Next.js + TypeScript (strict) - [ ] Initialiser le projet Next.js + TypeScript (strict)
- [ ] Configurer Tailwind - [ ] Configurer Tailwind
- [ ] Configurer ESLint + Prettier - [ ] Configurer ESLint + Prettier
@@ -126,6 +127,7 @@ Une feature est « faite » si et seulement si :
- [ ] DoD : `lint`, `format`, `typecheck`, `test` s'exécutent sans erreur sur un squelette - [ ] DoD : `lint`, `format`, `typecheck`, `test` s'exécutent sans erreur sur un squelette
### Phase 1 — Données et couche d'accès générique ### Phase 1 — Données et couche d'accès générique
- [ ] Schéma MySQL (table `cards`) + migration/seed - [ ] Schéma MySQL (table `cards`) + migration/seed
- [ ] Schéma MongoDB (collection `cards`) + seed - [ ] Schéma MongoDB (collection `cards`) + seed
- [ ] Interface générique `CardRepository` (contrat complet) - [ ] Interface générique `CardRepository` (contrat complet)
@@ -136,6 +138,7 @@ Une feature est « faite » si et seulement si :
- [ ] DoD : phase 0 + les 2 repositories testés et interchangeables - [ ] DoD : phase 0 + les 2 repositories testés et interchangeables
### Phase 2 — API / services métier ### Phase 2 — API / services métier
- [ ] Service métier `CardService` reposant uniquement sur l'abstraction repository - [ ] Service métier `CardService` reposant uniquement sur l'abstraction repository
- [ ] Routes API : liste, détail, création, modification, suppression - [ ] Routes API : liste, détail, création, modification, suppression
- [ ] Routes API : tirage aléatoire simple + tirage aléatoire par thème + liste des thèmes - [ ] Routes API : tirage aléatoire simple + tirage aléatoire par thème + liste des thèmes
@@ -145,6 +148,7 @@ Une feature est « faite » si et seulement si :
- [ ] DoD : phases précédentes + contexte de MCP de l'API - [ ] DoD : phases précédentes + contexte de MCP de l'API
### Phase 3 — Interface utilisateur ### Phase 3 — Interface utilisateur
- [ ] Page/vue **liste des cartes** (F-08) - [ ] Page/vue **liste des cartes** (F-08)
- [ ] Page/vue **détail d'une carte** (F-09) - [ ] Page/vue **détail d'une carte** (F-09)
- [ ] Formulaire **création** (F-05) - [ ] Formulaire **création** (F-05)
@@ -155,12 +159,14 @@ Une feature est « faite » si et seulement si :
- [ ] DoD : phases précédentes + parcours utilisateur complet fonctionnel - [ ] DoD : phases précédentes + parcours utilisateur complet fonctionnel
### Phase 4 — Tests ### Phase 4 — Tests
- [ ] Tests des composants UI (composants critiques) - [ ] Tests des composants UI (composants critiques)
- [ ] Couverture des critères F-01 à F-10 - [ ] Couverture des critères F-01 à F-10
- [ ] Coverage au seuil défini (Phase 0) - [ ] Coverage au seuil défini (Phase 0)
- [ ] DoD : toutes phases précédentes vertes + coverage ok - [ ] DoD : toutes phases précédentes vertes + coverage ok
### Phase 5 — PWA, déploiement ### Phase 5 — PWA, déploiement
- [ ] Manifest PWA + service worker (installable, hors-ligne) — la stack SPA le permet - [ ] Manifest PWA + service worker (installable, hors-ligne) — la stack SPA le permet
- [ ] `docker-compose.yml` : `web`, `mysql`, `mongo` - [ ] `docker-compose.yml` : `web`, `mysql`, `mongo`
- [ ] Volumes nommés pour l'ensemble des données - [ ] Volumes nommés pour l'ensemble des données