From 67f245a48faf6e89989aca2ea571b657fd4c8888 Mon Sep 17 00:00:00 2001
From: Valentin Popov
Date: Wed, 11 Jun 2025 23:20:36 +0000
Subject: feat: integrate schema.org support and enhance component structure
- Added schema.org support by introducing `schema-dts` for structured data in components.
- Updated `Head`, `BaseLayout`, and various page components to accept and utilize schema props for better SEO.
- Created new utility schemas for blog posts and website to standardize structured data implementation.
- Enhanced the `SocialLinks` section by utilizing dedicated icon components for improved maintainability.
- Refactored the `Header` component to improve accessibility and structure.
- Introduced new icons for social links and integrated them into the layout.
---
src/layouts/BaseLayout.astro | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
(limited to 'src/layouts')
diff --git a/src/layouts/BaseLayout.astro b/src/layouts/BaseLayout.astro
index f33ca69..216287e 100644
--- a/src/layouts/BaseLayout.astro
+++ b/src/layouts/BaseLayout.astro
@@ -1,4 +1,5 @@
---
+import type { WithContext, Thing } from "schema-dts";
import Analytics from "../components/Analytics.astro";
import Head from "../components/Head.astro";
import Header from "../components/Header.astro";
@@ -8,13 +9,14 @@ type Props = {
readonly description: string;
readonly title: string;
readonly lang: string;
+ readonly schema: WithContext;
};
-const { title, description, lang } = Astro.props;
+const { title, description, lang, schema } = Astro.props;
---
-
+
--
cgit v1.2.3