Skip to content

Objet : Layout Astro
Type : Layout
Slice : Slice 1 (Page d’accueil)
Cycle : DOC → SPEC → CODE → TEST → INTÉG
Statut : DOC


Le layout MainLayout est le layout principal utilisé pour les pages marketing (vitrine). Il fournit la structure commune de la page : header, footer, et conteneur principal.

  • Page d’accueil
  • Pages marketing (landing pages)
  • Pages de prĂ©sentation (about, features, etc.)
  • Type : Layout Astro
  • Composants inclus : Header, Footer, BaseHead
  • Structure : HTML, head, body, main
  • ResponsivitĂ© : Support mobile/desktop

Entrée : Props passées au layout

Structure :

interface Props {
title?: string;
description?: string;
image?: string;
canonicalURL?: string;
}

RĂšgles :

  • title : optionnel, titre de la page (utilise SITE_TITLE par dĂ©faut)
  • description : optionnel, description de la page (utilise SITE_DESCRIPTION par dĂ©faut)
  • image : optionnel, image OG Twitter
  • canonicalURL : optionnel, URL canonique

Entrée : Contenu du slot principal

Structure :

<MainLayout title="Ma Page">
<slot />
</MainLayout>

RĂšgles :

  • Le slot principal contient le contenu de la page
  • Le contenu est insĂ©rĂ© dans l’élĂ©ment <main>

Sortie : Structure HTML complĂšte

Comportement :

  • Structure HTML5 valide
  • Header en haut de page
  • Contenu principal dans <main>
  • Footer en bas de page
  • BaseHead dans <head>

Sortie : Métadonnées SEO injectées

Comportement :

  • <title> avec le titre de la page
  • <meta name="description"> avec la description
  • <meta property="og:title"> pour Open Graph
  • <meta property="og:description"> pour Open Graph
  • <meta property="og:image"> pour Open Graph
  • <link rel="canonical"> pour l’URL canonique

Effet : Le layout est utilisé par toutes les pages marketing

Impact :

  • Toutes les pages partagent la mĂȘme structure
  • Modification du layout impacte toutes les pages
  • NĂ©cessite de tester plusieurs pages aprĂšs modification

Effet : Le layout influence le SEO

Impact :

  • MĂ©tadonnĂ©es SEO correctes
  • Structure HTML sĂ©mantique
  • AccessibilitĂ© (ARIA labels, etc.)

Erreur Cause probable Solution
Titre manquant title non passé en prop Utiliser SITE_TITLE par défaut
Description manquante description non passé en prop Utiliser SITE_DESCRIPTION par défaut
Composant manquant Header ou Footer non importé Importer les composants manquants

Non applicable (layout Astro)


Avant de passer Ă  l’étape SPEC, vĂ©rifier :

  • La structure du layout est documentĂ©e
  • Les contrats d’entrĂ©e/sortie sont documentĂ©s
  • Les side effects sont identifiĂ©s
  • Les erreurs potentielles sont documentĂ©es

Validation requise : Confirmer que la documentation du layout MainLayout peut passer Ă  l’étape SPEC.


Date Version Description Auteur
2026-09-16 1.0 Création initiale Devin
Edit page

Last updated: