Bloc PageBuilder : testimonials
Objet : Bloc PageBuilder
Type : Object
Slice : Slice 1 (Page dâaccueil)
Cycle : DOC â SPEC â CODE â TEST â INTĂG
Statut : DOC
1. Description et périmÚtre
Section titled â1. Description et pĂ©rimĂštreâ1.1. Objectif
Section titled â1.1. ObjectifâLe bloc testimonials est un bloc PageBuilder qui affiche une liste de tĂ©moignages de clients avec leurs avatars, noms, rĂŽles et textes.
1.2. Utilisation principale
Section titled â1.2. Utilisation principaleâ- Section de tĂ©moignages de la page dâaccueil
- Preuve sociale
- Retours clients
1.3. PérimÚtre concerné
Section titled â1.3. PĂ©rimĂštre concernĂ©â- Type : Object Sanity
- Champs : title, testimonials (array)
- Rendu : Composant Astro Testimonials
- Carrousel ou grille : Support desktop/mobile
2. Contrats dâentrĂ©e
Section titled â2. Contrats dâentrĂ©eâ2.1. Structure du bloc
Section titled â2.1. Structure du blocâEntrĂ©e : Configuration du bloc testimonials dans Sanity Studio
Structure :
{ _type: "testimonials", title: string, testimonials: [ { name: string, role: string, text: string, avatar: image } ]}RĂšgles :
title: obligatoire, titre de la sectiontestimonials: obligatoire, tableau de témoignages- Chaque témoignage : name (obligatoire), role (obligatoire), text (obligatoire), avatar (optionnel)
2.2. Validation
Section titled â2.2. ValidationâRĂšgles de validation :
title: max 100 caractÚrestestimonials: minimum 1 témoignage, maximum 6 témoignagestestimonial.name: max 50 caractÚrestestimonial.role: max 50 caractÚrestestimonial.text: max 500 caractÚres
3. Contrats de sortie
Section titled â3. Contrats de sortieâ3.1. DonnĂ©es Sanity
Section titled â3.1. DonnĂ©es SanityâSortie : Bloc testimonials dans le PageBuilder
Format : JSON avec la structure définie ci-dessus
Utilisation :
- Rendu dans le composant Astro Testimonials
- Utilisation dans le PageBuilder de la page
3.2. Rendu Astro
Section titled â3.2. Rendu AstroâSortie : Composant Astro Testimonials
Comportement :
- Affichage du titre de la section
- Affichage de la grille ou carrousel de témoignages
- Avatars, noms, rĂŽles et textes
- Grille responsive (1 colonne mobile, 3 colonnes desktop)
4. Side effects
Section titled â4. Side effectsâ4.1. Impact sur le rendu
Section titled â4.1. Impact sur le renduâEffet : Le bloc testimonials nĂ©cessite un composant Astro spĂ©cifique
Impact :
- Création du composant
Testimonials.astro - Gestion de la grille responsive ou carrousel
- Gestion des avatars
4.2. Impact sur les performances
Section titled â4.2. Impact sur les performancesâEffet : Les avatars peuvent impacter les performances
Impact :
- Optimisation des avatars (format, taille)
- Lazy loading des avatars
- Responsive images
5. Erreurs et gestion
Section titled â5. Erreurs et gestionâ5.1. Erreurs potentielles
Section titled â5.1. Erreurs potentiellesâ| Erreur | Cause probable | Solution |
|---|---|---|
| Aucun témoignage | Tableau testimonials vide |
Afficher un message dâerreur ou masquer le bloc |
| Avatar manquant | Avatar non uploadé dans Sanity | Afficher une avatar par défaut |
| Texte trop long | Texte > 500 caractÚres | Tronquer le texte ou valider cÎté Sanity |
5.2. Codes HTTP
Section titled â5.2. Codes HTTPâNon applicable (bloc PageBuilder)
6. Checklist de validation
Section titled â6. Checklist de validationâAvant de passer Ă lâĂ©tape SPEC, vĂ©rifier :
- La structure du bloc est documentée
- Les contrats dâentrĂ©e/sortie sont documentĂ©s
- Les side effects sont identifiés
- Les erreurs potentielles sont documentées
7. Approbation
Section titled â7. ApprobationâValidation requise : Confirmer que la documentation du bloc testimonials peut passer Ă lâĂ©tape SPEC.
8. Historique des modifications
Section titled â8. Historique des modificationsâ| Date | Version | Description | Auteur |
|---|---|---|---|
| 2026-09-16 | 1.0 | Création initiale | Devin |