My landing page, written in Astro hayden.moe
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: resolve metadata issues

+9 -4
-1
src/components/base-head.astro
··· 7 7 <link rel="icon" sizes="32x32" href="/favicon-32x32.png" /> 8 8 <link rel="icon" sizes="16x16" href="/favicon-16x16.png" /> 9 9 <link rel="apple-touch-icon" href="/apple-touch-icon.png" /> 10 - <meta name="description" content="The blog of a lowly DevOps Engineer from the UK. Federated on atproto!" />
+7 -2
src/layouts/shell.astro
··· 9 9 10 10 interface Props { 11 11 title?: string; 12 + description?: string; 12 13 children: any; 13 14 } 14 15 15 - const { title } = Astro.props; 16 + const { 17 + title = 'hayden@web ~', 18 + description = 'The blog of a lowly DevOps Engineer from the UK. Federated on atproto!', 19 + } = Astro.props; 16 20 --- 17 21 18 22 <html lang="en"> 19 23 <head> 20 24 <meta charset="utf-8" /> 21 25 <meta name="viewport" content="width=device-width, initial-scale=1" /> 22 - <title>{title ?? 'hayden@web ~'}</title> 26 + <title>{title}</title> 27 + <meta name="description" content={description} /> 23 28 <BaseHead /> 24 29 </head> 25 30 <body class="antialiased bg-black text-white font-mono tracking-normal leading-normal flex flex-col min-h-screen selection:bg-base0E selection:text-black">
+2 -1
src/pages/posts/[rkey].astro
··· 16 16 const markdownProcessor = await createMarkdownProcessor(); 17 17 const post = await getPost(Astro.locals, rkey!); 18 18 const content = await markdownProcessor.render(post.content) 19 + const shortContent = post.content.slice(0, 200).trimEnd() + '...'; 19 20 --- 20 - <Shell> 21 + <Shell title={post.title} description={shortContent}> 21 22 <header class="max-w-2xl mx-auto w-full"> 22 23 <h1 class="font-bold before-hash-1">{post.title}</h1> 23 24 <span class="text-base03">