feat: OG png + sentry + dept api + drom notice + registre canicule
Some checks are pending
Deploy info-canicule / deploy (push) Waiting to run

Quick wins :
- public/og-image.png (1200x630, via sharp depuis le SVG, build via pnpm build)
  SVG ne fonctionne pas pour Open Graph (Slack/Discord/X/FB).
- @sentry/astro intégré conditionnellement (skip si SENTRY_DSN absent → no-op).
  GIT_COMMIT_SHA en var pour le release tag dans GlitchTip si voulu.
- /api/vigilance/dept/[code] : JSON enrichi (phenomenon label + color name)
  pour J et J1, CORS *, Cache-Control 5min. 404 si code unknown.
- JSON-LD enrichi : @graph WebSite + Service avec isBasedOn Dataset + license LOv2.
- Lien retour vigilance.meteofrance.fr visible sous la carte.

DROM (97x / 976) :
- 5 entrées ajoutées dans departements.ts (région "DROM").
- /departement/[code] DROM : bannière "Vigilance Outre-mer non couverte par
  cette source open data" + bouton vers vigilance.meteofrance.fr.
- Home : ligne sous la carte listant les 5 DROM + lien retour.
- L'API /api/vigilance/dept/<DROM> retourne quand même un JSON 200 (arrays vides).

Registre canicule :
- Page /conseils/registre-canicule : qui, quoi, comment s'inscrire au CCAS.
- Numéro vert 0 800 06 66 66.
- Bannière mise en avant en haut de /conseils.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Florian 2026-05-25 20:59:11 +02:00
parent 89e48c18e4
commit 87d173684c
13 changed files with 1595 additions and 35 deletions

View file

@ -14,7 +14,7 @@ const {
title = 'Info Canicule — Vigilance météo France en temps réel',
description = 'Suivi gratuit et sans publicité des alertes Vigilance Météo France (canicule, orages, tempêtes), avec carte interactive par département et conseils officiels.',
canonical,
ogImage = '/og-image.svg',
ogImage = '/og-image.png',
noindex = false,
} = Astro.props;
@ -25,20 +25,43 @@ const umamiSrc = process.env.UMAMI_SRC ?? 'https://analytics.nocleus.com/script.
const jsonLd = {
'@context': 'https://schema.org',
'@type': 'WebSite',
name: 'Info Canicule',
url: SITE,
description,
inLanguage: 'fr-FR',
publisher: {
'@type': 'Person',
name: 'Florian Bouchet',
},
potentialAction: {
'@type': 'SearchAction',
target: `${SITE}/departement/{code}`,
'query-input': 'required name=code',
},
'@graph': [
{
'@type': 'WebSite',
'@id': `${SITE}/#website`,
name: 'Info Canicule',
url: SITE,
description,
inLanguage: 'fr-FR',
publisher: { '@type': 'Person', name: 'Florian Bouchet' },
potentialAction: {
'@type': 'SearchAction',
target: `${SITE}/departement/{code}`,
'query-input': 'required name=code',
},
},
{
'@type': 'Service',
'@id': `${SITE}/#service`,
name: 'Info Canicule',
serviceType: 'Service d\'information météorologique grand public',
areaServed: { '@type': 'Country', name: 'France' },
audience: { '@type': 'PeopleAudience', audienceType: 'Grand public, personnes fragiles' },
provider: {
'@type': 'Person',
name: 'Florian Bouchet',
url: `${SITE}/a-propos`,
},
isBasedOn: {
'@type': 'Dataset',
name: 'Vigilance Météo France',
url: 'https://vigilance.meteofrance.fr/',
creator: { '@type': 'Organization', name: 'Météo-France' },
license: 'https://www.etalab.gouv.fr/licence-ouverte-open-licence/',
},
isAccessibleForFree: true,
},
],
};
---