diff --git a/design/og.svg b/design/og.svg
new file mode 100644
index 0000000..04d2c01
--- /dev/null
+++ b/design/og.svg
@@ -0,0 +1,51 @@
+
+
+
diff --git a/public/og.png b/public/og.png
new file mode 100644
index 0000000..32d6dc9
Binary files /dev/null and b/public/og.png differ
diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro
index a360d0a..6bdb1f4 100644
--- a/src/layouts/Layout.astro
+++ b/src/layouts/Layout.astro
@@ -13,6 +13,8 @@ interface Props {
const { title, description, noindex = false } = Astro.props;
const currentPath = Astro.url.pathname;
const canonicalURL = new URL(currentPath, Astro.site);
+// Social cards need an absolute URL; relative paths are ignored by every scraper.
+const ogImageURL = new URL('/og.png', Astro.site);
const navLinks = [
{ href: "/", label: "Home" },
@@ -42,6 +44,24 @@ import '../styles/global.css';
)
}
+
+
+
+
+
+
+
+
+
+
+
+ {/* Title, description, and image fall back to the og: tags above. */}
+
+
+