Skip to content

Commit dea8838

Browse files
bholmesdevoz-agent
andcommitted
feat(www): add SEO/AEO optimizations
- Configure site URL (https://simple-stack.dev) for canonical URLs - Add @astrojs/sitemap integration for automatic sitemap generation - Add robots.txt with sitemap reference - Add Open Graph and Twitter Card meta tags globally via Starlight head config - Add Organization JSON-LD structured data for AI engine discoverability - Clean up site title (remove emoji from <title> tag) - Improve homepage meta description for AEO with answer-first format - Add aria-label to video element in stream.md for accessibility Co-Authored-By: Oz <oz-agent@warp.dev>
1 parent 70cb101 commit dea8838

6 files changed

Lines changed: 79 additions & 18 deletions

File tree

pnpm-lock.yaml

Lines changed: 26 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

www/astro.config.mjs

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
import starlight from "@astrojs/starlight";
2+
import sitemap from "@astrojs/sitemap";
23
import { defineConfig } from "astro/config";
34

45
export default defineConfig({
6+
site: "https://simple-stack.dev",
57
integrations: [
68
starlight({
7-
title: "Simple Stack 🌱",
9+
title: "Simple Stack",
810
social: [
911
{
1012
icon: "github",
@@ -13,6 +15,46 @@ export default defineConfig({
1315
},
1416
{ icon: "discord", label: "Discord", href: "https://wtw.dev/chat" },
1517
],
18+
head: [
19+
{
20+
tag: "meta",
21+
attrs: {
22+
property: "og:site_name",
23+
content: "Simple Stack",
24+
},
25+
},
26+
{
27+
tag: "meta",
28+
attrs: {
29+
property: "og:type",
30+
content: "website",
31+
},
32+
},
33+
{
34+
tag: "meta",
35+
attrs: {
36+
name: "twitter:card",
37+
content: "summary",
38+
},
39+
},
40+
{
41+
tag: "script",
42+
attrs: {
43+
type: "application/ld+json",
44+
},
45+
content: JSON.stringify({
46+
"@context": "https://schema.org",
47+
"@type": "Organization",
48+
name: "Simple Stack",
49+
url: "https://simple-stack.dev",
50+
description:
51+
"Simple Stack is a collection of lightweight developer tools for Astro, including a reactive store, scoped IDs, and DOM query utilities.",
52+
sameAs: [
53+
"https://github.com/bholmesdev/simple-stack",
54+
],
55+
}),
56+
},
57+
],
1658
sidebar: [
1759
{
1860
label: "💾 Store",
@@ -44,5 +86,6 @@ export default defineConfig({
4486
"./src/styles/custom.css",
4587
],
4688
}),
89+
sitemap(),
4790
],
4891
});

www/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
},
1818
"dependencies": {
1919
"@astrojs/check": "^0.9.6",
20+
"@astrojs/sitemap": "^3.7.1",
2021
"@astrojs/starlight": "^0.37.1",
2122
"@fontsource/atkinson-hyperlegible": "^5.0.18",
2223
"astro": "^5.16.6",

www/public/robots.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
User-agent: *
2+
Allow: /
3+
4+
Sitemap: https://simple-stack.dev/sitemap-index.xml

www/src/content/docs/index.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
---
2-
title: Simple stack 🌱
3-
description: A suite of tools built for Astro to simplify your workflow.
2+
title: Simple Stack
3+
description: Simple Stack is a collection of lightweight developer tools for Astro, including a reactive store, scoped IDs, and DOM query utilities.
44
tableOfContents: false
55
head:
66
- tag: title
7-
content: Simple stack 🌱
7+
content: Simple Stack - Lightweight Developer Tools for Astro
88
---
99

1010
A collection of tools I've built to **make web development simpler.**

www/src/content/docs/stream.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ description: Suspend Astro components with fallback content. Like React Server C
99

1010
Suspend Astro components with fallback content. Like React Server Components, but Just HTML ™️
1111

12-
<video controls width="100%" style="aspect-ratio:1.65/1" src="/assets/simple-stream-intro.mov"></video>
12+
<video controls width="100%" style="aspect-ratio:1.65/1" src="/assets/simple-stream-intro.mov" aria-label="Demo of Simple Stream showing suspended Astro components loading with fallback content"></video>
1313

1414
```astro
1515
---

0 commit comments

Comments
 (0)