31 lines
1.7 KiB
Markdown
31 lines
1.7 KiB
Markdown
## Contexte
|
||
|
||
Les métadonnées Open Graph et Twitter sont définies une seule fois dans `apps/web/index.html`. Les URLs de recette `/r/...` doivent exposer **titre**, **description** et **image** adaptés au partage.
|
||
|
||
**Contrainte SPA** : modifier `<title>` ou les meta **uniquement en JavaScript après chargement** ne suffit souvent pas pour les robots d’aperçu (Facebook, X, LinkedIn) : ils lisent le HTML initial.
|
||
|
||
## Objectif
|
||
|
||
Pour chaque recette partageable, fournir des métadonnées correctes : `og:title`, `og:description`, `og:image`, `og:url`, `twitter:card` (idéalement `summary_large_image` si visuel adapté), éventuellement `canonical`.
|
||
|
||
## Options à trancher (documenter le choix dans README ou `docs/`)
|
||
|
||
| Approche | Effort | Aperçus réseaux |
|
||
|----------|--------|-----------------|
|
||
| Pré-rendu statique des routes `/r/*` au build (catalogue / pipeline recettes) | Moyen | Bon pour crawlers statiques |
|
||
| Middleware / route serveur (Worker, reverse proxy, petite app Node) injectant le HTML minimal avec meta | Variable | Très bon si bien déployé |
|
||
| Meta uniquement côté client (Solid) | Faible | Insuffisant pour la majorité des partages |
|
||
|
||
Données : titres localisés, description courte, images de couverture produites par le pipeline recettes.
|
||
|
||
## Critères d’acceptation
|
||
|
||
- [ ] Partager une URL `/r/...` affiche un aperçu avec **titre et image recette** (validation manuelle : Meta Sharing Debugger / Twitter Card Validator ou équivalent).
|
||
- [ ] Balises OG/Twitter cohérentes (`og:type`, `og:url`, etc.).
|
||
- [ ] Documentation de la stratégie retenue (build vs serveur).
|
||
|
||
## Références
|
||
|
||
- `apps/web/index.html`
|
||
- Parcours e2e et URL partagée dans `tests/e2e/builder.e2e.ts`
|