Skip to content

Bloc PageBuilder : testimonials

Bloc PageBuilder : testimonials

Documentation technique

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

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 de témoignages de la page d’accueil
  • Preuve sociale
  • Retours clients

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

2.1. Structure du bloc1/2

Entrée : Configuration du bloc testimonials dans Sanity Studio

Structure :

{
_type: "testimonials",
title: string,
testimonials: [
{
name: string,
role: string,
text: string,
avatar: image
}
]
}

2.1. Structure du bloc2/2

Règles :

  • title : obligatoire, titre de la section
  • testimonials : obligatoire, tableau de témoignages
  • Chaque témoignage : name (obligatoire), role (obligatoire), text (obligatoire), avatar (optionnel)

2.2. Validation

Règles de validation :

  • title : max 100 caractères
  • testimonials : minimum 1 témoignage, maximum 6 témoignages
  • testimonial.name : max 50 caractères
  • testimonial.role : max 50 caractères
  • testimonial.text : max 500 caractères

3. Contrats de sortie

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

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

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

Effet : Les avatars peuvent impacter les performances

Impact :

  • Optimisation des avatars (format, taille)
  • Lazy loading des avatars
  • Responsive images

5. Erreurs et gestion

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

Non applicable (bloc PageBuilder)

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

Validation requise : Confirmer que la documentation du bloc testimonials peut passer à l’étape SPEC.

8. Historique des modifications

Date Version Description Auteur
2026-09-16 1.0 Création initiale Devin
Switch to normal mode

Contents