La section Héros (Hero) est la première chose que les visiteurs voient. Chaque thème possède son propre design de héros unique avec des animations personnalisées, des arrière-plans et une disposition spécifique.
Variantes de Thème
| Thème | Composant | Design |
|---|---|---|
| Liquid | HeroLiquid.astro | Formes SVG animées liquides, texte en dégradé |
| Glass | HeroGlass.astro | Carte de héros en verre dépoli avec arrière-plans flous |
| Neo | HeroNeo.astro | Typographie audacieuse, contraste élevé |
| Luxury | HeroLuxury.astro | Accents dorés, disposition premium |
| Minimal | HeroMinimal.astro | Épuré, centré, sans distraction |
| Aurora | HeroAurora.astro | Maillage dégradé, éléments géométriques |
Toutes les variantes se trouvent dans src/components/sections/hero/.
Comment ça marche
Chaque variante de Héros est un composant Astro autonome qui :
- Importe et initialise
useTranslations()pour la langue actuelle. - Rend (render) sa propre structure HTML unique avec un CSS spécifique au thème.
- Charge les clés de traduction comme
hero.title,hero.subtitle,hero.ctaethero.liveBadgedepuissrc/locales/{lang}/hero.json.
---import { useTranslations } from '../../../utils/i18n';import { getLocaleFromUrl } from '../../../utils/locale-utils';
const locale = getLocaleFromUrl(Astro.url);const t = useTranslations(locale);---
<section> <h1>{t('hero.title')}</h1> <p>{t('hero.subtitle')}</p> <a href="#explore">{t('hero.cta')}</a></section>ℹ️
Pas de Propriétés (Props)
Les composants Hero ne prennent aucune propriété externe. Pour modifier le titre d’accroche, le sous-titre ou le texte du CTA, modifiez src/locales/fr/hero.json (ou le fichier de langue approprié).
Personnaliser un Héros
Pour personnaliser le composant Héros d’un thème spécifique :
- Ouvrez
src/components/sections/hero/Hero{Theme}.astro. - Modifiez la structure HTML, les classes ou les animations selon vos besoins.
- Pour les modifications CSS, éditez
src/styles/components/hero/Hero{Theme}.css. - Pour les modifications de texte, éditez
src/locales/{lang}/hero.json.