--- import "../styles/global.css"; import { social, profile } from "../data/content"; interface Props { title?: string; description?: string; } const { title = "Johan Leroy, Développeur fullstack", description = "Johan Leroy, développeur fullstack basé à Nantes. TypeScript, NestJS, Nuxt/Vue, Next.js. Conception d'applications web performantes, du front à la mise en production.", } = Astro.props; const siteUrl = Astro.site?.href ?? "https://johanleroy.fr/"; const canonical = new URL(Astro.url.pathname, siteUrl).href; const ogImage = new URL("/images/og.png", siteUrl).href; const ogDescription = "Développeur fullstack à Nantes. Applications web performantes, propres et scalables."; // Données structurées (schema.org Person) — aide les moteurs à comprendre la page. const jsonLd = { "@context": "https://schema.org", "@type": "Person", name: profile.name, jobTitle: profile.role, url: siteUrl, image: ogImage, email: social.email, address: { "@type": "PostalAddress", addressLocality: "Nantes", addressCountry: "FR" }, sameAs: [social.github, social.linkedin, social.gitea, social.soundcloud], knowsAbout: ["TypeScript", "NestJS", "Nuxt", "Next.js", "Vue.js", "Astro", "Docker", "AWS", "Terraform"], }; --- {title} {/* Open Graph */} {/* Twitter */}