Skip to content

Commit 52a8fc8

Browse files
bholmesdevoz-agent
andcommitted
seo: add site config, robots.txt, structured data, and improved meta descriptions
- Add site property to astro.config.mjs to enable sitemap and canonical URLs - Add robots.txt with sitemap reference - Add WebSite JSON-LD structured data via Starlight head config - Improve meta descriptions on all pages for better keyword targeting - Add video fallback text on stream.md - Remove emoji from site title for cleaner SERP display Co-Authored-By: Oz <oz-agent@warp.dev>
1 parent 70cb101 commit 52a8fc8

File tree

10 files changed

+47
-20
lines changed

10 files changed

+47
-20
lines changed

www/astro.config.mjs

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@ import starlight from "@astrojs/starlight";
22
import { defineConfig } from "astro/config";
33

44
export default defineConfig({
5+
site: "https://simple-stack.dev",
56
integrations: [
67
starlight({
7-
title: "Simple Stack 🌱",
8+
title: "Simple Stack",
89
social: [
910
{
1011
icon: "github",
@@ -13,6 +14,29 @@ export default defineConfig({
1314
},
1415
{ icon: "discord", label: "Discord", href: "https://wtw.dev/chat" },
1516
],
17+
head: [
18+
{
19+
tag: "script",
20+
attrs: { type: "application/ld+json" },
21+
content: JSON.stringify({
22+
"@context": "https://schema.org",
23+
"@type": "WebSite",
24+
name: "Simple Stack",
25+
url: "https://simple-stack.dev",
26+
description:
27+
"Lightweight developer tools for Astro including reactive stores, scoped IDs, and DOM query utilities.",
28+
author: {
29+
"@type": "Person",
30+
name: "Ben Holmes",
31+
url: "https://bholmes.dev",
32+
sameAs: [
33+
"https://github.com/bholmesdev",
34+
"https://twitter.com/babormeister",
35+
],
36+
},
37+
}),
38+
},
39+
],
1640
sidebar: [
1741
{
1842
label: "💾 Store",

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/form/client.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: Add client validation
3-
description: Add client validation to your forms
2+
title: Add Client Validation
3+
description: "Generate client-validated form components with the simple-form CLI. Uses the reward-early, punish-late UX pattern for accessible inline validation."
44
sidebar:
55
order: 3
66
---

www/src/content/docs/form/index.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: Simple form
3-
description: The simple way to validate forms in your fullstack app.
2+
title: Simple Form
3+
description: "Validate forms in Astro with Zod schemas. Auto-generates input props, handles server-side parsing, and supports client validation. (Deprecated)"
44
sidebar:
55
label: Get started
66
order: 1

www/src/content/docs/form/parse.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: Parse form requests
3-
description: Validate forms server-side
2+
title: Parse Form Requests
3+
description: "Server-side form validation helpers for Astro. Parse and validate FormData with Zod using getData(), getDataByName(), and validateForm()."
44
sidebar:
55
order: 2
66
---

www/src/content/docs/index.mdx

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
---
2-
title: Simple stack 🌱
3-
description: A suite of tools built for Astro to simplify your workflow.
2+
title: Simple Stack — Lightweight Developer Tools for Astro
3+
description: A collection of lightweight Astro tools including reactive stores, build-time scoped IDs, and DOM query utilities. Zero-config, minimal JS.
44
tableOfContents: false
5-
head:
6-
- tag: title
7-
content: Simple stack 🌱
85
---
96

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

www/src/content/docs/query.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: 💰 Simple Query
3-
description: A simple library to query the DOM from your Astro components.
3+
description: Query DOM elements from Astro components with scoped data-target selectors. Supports signals, server data passing, and view transition cleanup.
44
---
55

66
import { Tabs, TabItem, LinkCard } from '@astrojs/starlight/components';

www/src/content/docs/scope.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: 🔎 Simple scope
3-
description: Get a scoped ID for whatever file you're in. Resolved at build-time with zero client JS.
2+
title: 🔎 Simple Scope
3+
description: Vite plugin that generates deterministic scoped IDs at build time with zero client JS. Ideal for form labels, query selectors, and SSR hydration.
44
---
55

66
import { LinkCard } from '@astrojs/starlight/components';

www/src/content/docs/store.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: 💾 Simple store
3-
description: A reactive store that combines the simplicity of signals with the power of "selectors" you'd find in Zustand or Redux.
2+
title: 💾 Simple Store
3+
description: A lightweight reactive store for JavaScript and React. Combines signal-like simplicity with Zustand-style selectors. Works with Vite and Next.js.
44
sidebar:
55
label: Get started
66
order: 1

www/src/content/docs/stream.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
2-
title: Simple stream 🌊
3-
description: Suspend Astro components with fallback content. Like React Server Components, but Just HTML ™️
2+
title: Simple Stream 🌊
3+
description: "Suspend Astro components with fallback content and out-of-order streaming. Like React Server Components, but Just HTML. (Deprecated)"
44
---
55

66
:::caution
@@ -9,7 +9,9 @@ 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">
13+
Your browser does not support the video tag. See the Simple Stream demo showing Suspense-style component streaming in Astro.
14+
</video>
1315

1416
```astro
1517
---

0 commit comments

Comments
 (0)