✨ Story 3.3: liste projets vedettes
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
## Status
|
||||
|
||||
Ready for Dev
|
||||
review
|
||||
|
||||
## Story
|
||||
|
||||
@@ -21,31 +21,31 @@ Ready for Dev
|
||||
|
||||
## Tasks / Subtasks
|
||||
|
||||
- [] **Task 1 : Créer la page projects.php** (AC: 1)
|
||||
- [] Créer `pages/projects.php`
|
||||
- [] Récupérer les projets vedettes avec `getProjectsByCategory('vedette')`
|
||||
- [] Inclure header, navbar, footer
|
||||
- [x] **Task 1 : Créer la page projects.php** (AC: 1)
|
||||
- [x] Créer `pages/projects.php`
|
||||
- [x] Récupérer les projets vedettes avec `getProjectsByCategory('vedette')`
|
||||
- [x] Inclure header, navbar, footer
|
||||
|
||||
- [] **Task 2 : Créer le template project-card.php** (AC: 2, 6)
|
||||
- [] Créer `templates/project-card.php`
|
||||
- [] Afficher le thumbnail avec lazy loading
|
||||
- [] Afficher le titre
|
||||
- [] Afficher les badges technologies (max 4)
|
||||
- [] Rendre le composant réutilisable
|
||||
- [x] **Task 2 : Créer le template project-card.php** (AC: 2, 6)
|
||||
- [x] Créer `templates/project-card.php`
|
||||
- [x] Afficher le thumbnail avec lazy loading
|
||||
- [x] Afficher le titre
|
||||
- [x] Afficher les badges technologies (max 4)
|
||||
- [x] Rendre le composant réutilisable
|
||||
|
||||
- [] **Task 3 : Implémenter la grille responsive** (AC: 4)
|
||||
- [] 1 colonne sur mobile
|
||||
- [] 2 colonnes sur tablette (sm:)
|
||||
- [] 3 colonnes sur desktop (lg:)
|
||||
- [x] **Task 3 : Implémenter la grille responsive** (AC: 4)
|
||||
- [x] 1 colonne sur mobile
|
||||
- [x] 2 colonnes sur tablette (sm:)
|
||||
- [x] 3 colonnes sur desktop (lg:)
|
||||
|
||||
- [] **Task 4 : Ajouter les interactions** (AC: 3, 5)
|
||||
- [] Carte entière cliquable (lien vers /projet/{slug})
|
||||
- [] Effet hover avec card-interactive
|
||||
- [] Transition smooth
|
||||
- [x] **Task 4 : Ajouter les interactions** (AC: 3, 5)
|
||||
- [x] Carte entière cliquable (lien vers /projet/{slug})
|
||||
- [x] Effet hover avec card-interactive
|
||||
- [x] Transition smooth
|
||||
|
||||
- [] **Task 5 : Gérer les cas limites**
|
||||
- [] Aucun projet → message "Projets à venir"
|
||||
- [] Image manquante → placeholder (onerror fallback)
|
||||
- [x] **Task 5 : Gérer les cas limites**
|
||||
- [x] Aucun projet → message "Projets à venir"
|
||||
- [x] Image manquante → placeholder (onerror fallback)
|
||||
|
||||
## Dev Notes
|
||||
|
||||
@@ -184,7 +184,7 @@ $maxTechs = 4;
|
||||
## Dev Agent Record
|
||||
|
||||
### Agent Model Used
|
||||
Claude Opus 4.5 (claude-opus-4-5-20251101)
|
||||
GPT-5 Codex
|
||||
|
||||
### File List
|
||||
| File | Action | Description |
|
||||
@@ -192,6 +192,8 @@ Claude Opus 4.5 (claude-opus-4-5-20251101)
|
||||
| `pages/projects.php` | Modified | Page liste projets vedettes |
|
||||
| `templates/project-card.php` | Created | Template carte projet réutilisable |
|
||||
| `assets/img/projects/default-project.svg` | Created | Placeholder image par défaut |
|
||||
| `tests/projects-list.test.php` | Created | Tests page projets |
|
||||
| `tests/run.ps1` | Modified | Ajout tests projets |
|
||||
|
||||
### Completion Notes
|
||||
- Grille responsive: 1 col (mobile) → 2 cols (sm) → 3 cols (lg)
|
||||
@@ -199,7 +201,7 @@ Claude Opus 4.5 (claude-opus-4-5-20251101)
|
||||
- Lazy loading natif sur les images
|
||||
- Fallback onerror pour images manquantes
|
||||
- Message "Projets à venir" si aucun projet
|
||||
- 2 projets vedettes affichés correctement
|
||||
- Tests: `powershell -ExecutionPolicy Bypass -File tests/run.ps1`
|
||||
|
||||
### Debug Log References
|
||||
Aucun problème rencontré.
|
||||
@@ -209,4 +211,4 @@ Aucun problème rencontré.
|
||||
| Date | Version | Description | Author |
|
||||
|------|---------|-------------|--------|
|
||||
| 2026-01-22 | 0.1 | Création initiale | Sarah (PO) |
|
||||
| 2026-01-23 | 1.0 | Implémentation complète | James (Dev) |
|
||||
| 2026-02-04 | 1.0 | Implémentation complète | Amelia |
|
||||
|
||||
Reference in New Issue
Block a user