From edc036808c90cb436527fe2c466db2b9b7a7e2f7 Mon Sep 17 00:00:00 2001 From: Ben Holmes Date: Tue, 24 Mar 2026 09:05:53 +0000 Subject: [PATCH] =?UTF-8?q?feat(www):=20SEO/AEO=20improvements=20=E2=80=94?= =?UTF-8?q?=20site=20URL,=20robots.txt,=20structured=20data,=20clean=20tit?= =?UTF-8?q?les?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add site URL (https://simple-stack.dev) to astro.config.mjs to enable sitemap generation, canonical URLs, and absolute URL resolution - Add robots.txt allowing all crawlers with sitemap reference - Add Open Graph meta tags (og:type, og:site_name) site-wide - Add Organization JSON-LD structured data site-wide - Add WebSite JSON-LD structured data on homepage - Remove emojis from page title frontmatter for cleaner SERP display (emojis remain in sidebar labels for visual navigation) - Improve homepage title for SEO Co-Authored-By: Oz --- www/astro.config.mjs | 27 ++++++++++++++++++++++++++- www/public/robots.txt | 4 ++++ www/src/content/docs/index.mdx | 8 ++++++-- www/src/content/docs/query.mdx | 2 +- www/src/content/docs/scope.mdx | 2 +- www/src/content/docs/store.mdx | 2 +- www/src/content/docs/stream.md | 2 +- 7 files changed, 40 insertions(+), 7 deletions(-) create mode 100644 www/public/robots.txt diff --git a/www/astro.config.mjs b/www/astro.config.mjs index 0d7e4c1..2ef6268 100644 --- a/www/astro.config.mjs +++ b/www/astro.config.mjs @@ -2,9 +2,10 @@ import starlight from "@astrojs/starlight"; import { defineConfig } from "astro/config"; export default defineConfig({ + site: "https://simple-stack.dev", integrations: [ starlight({ - title: "Simple Stack 🌱", + title: "Simple Stack", social: [ { icon: "github", @@ -13,6 +14,30 @@ export default defineConfig({ }, { icon: "discord", label: "Discord", href: "https://wtw.dev/chat" }, ], + head: [ + { + tag: "meta", + attrs: { property: "og:type", content: "website" }, + }, + { + tag: "meta", + attrs: { property: "og:site_name", content: "Simple Stack" }, + }, + { + tag: "script", + attrs: { type: "application/ld+json" }, + content: JSON.stringify({ + "@context": "https://schema.org", + "@type": "Organization", + name: "Simple Stack", + url: "https://simple-stack.dev", + logo: "https://simple-stack.dev/favicon.svg", + sameAs: [ + "https://github.com/bholmesdev/simple-stack", + ], + }), + }, + ], sidebar: [ { label: "💾 Store", diff --git a/www/public/robots.txt b/www/public/robots.txt new file mode 100644 index 0000000..3214756 --- /dev/null +++ b/www/public/robots.txt @@ -0,0 +1,4 @@ +User-agent: * +Allow: / + +Sitemap: https://simple-stack.dev/sitemap-index.xml diff --git a/www/src/content/docs/index.mdx b/www/src/content/docs/index.mdx index 1e6d15c..2e09ac5 100644 --- a/www/src/content/docs/index.mdx +++ b/www/src/content/docs/index.mdx @@ -1,10 +1,14 @@ --- -title: Simple stack 🌱 +title: Simple Stack — Lightweight Tools for Astro & Vite description: A suite of tools built for Astro to simplify your workflow. tableOfContents: false head: - tag: title - content: Simple stack 🌱 + content: Simple Stack — Lightweight Tools for Astro & Vite + - tag: script + attrs: + type: application/ld+json + content: '{"@context":"https://schema.org","@type":"WebSite","name":"Simple Stack","url":"https://simple-stack.dev","description":"A suite of tools built for Astro to simplify your workflow."}' --- A collection of tools I've built to **make web development simpler.** diff --git a/www/src/content/docs/query.mdx b/www/src/content/docs/query.mdx index 5549582..d0f0df2 100644 --- a/www/src/content/docs/query.mdx +++ b/www/src/content/docs/query.mdx @@ -1,5 +1,5 @@ --- -title: 💰 Simple Query +title: Simple Query description: A simple library to query the DOM from your Astro components. --- diff --git a/www/src/content/docs/scope.mdx b/www/src/content/docs/scope.mdx index 93740de..94b2ccc 100644 --- a/www/src/content/docs/scope.mdx +++ b/www/src/content/docs/scope.mdx @@ -1,5 +1,5 @@ --- -title: 🔎 Simple scope +title: Simple Scope description: Get a scoped ID for whatever file you're in. Resolved at build-time with zero client JS. --- diff --git a/www/src/content/docs/store.mdx b/www/src/content/docs/store.mdx index cda86d1..90e8fc0 100644 --- a/www/src/content/docs/store.mdx +++ b/www/src/content/docs/store.mdx @@ -1,5 +1,5 @@ --- -title: 💾 Simple store +title: Simple Store description: A reactive store that combines the simplicity of signals with the power of "selectors" you'd find in Zustand or Redux. sidebar: label: Get started diff --git a/www/src/content/docs/stream.md b/www/src/content/docs/stream.md index 5c734fb..0cd0c18 100644 --- a/www/src/content/docs/stream.md +++ b/www/src/content/docs/stream.md @@ -1,5 +1,5 @@ --- -title: Simple stream 🌊 +title: Simple Stream description: Suspend Astro components with fallback content. Like React Server Components, but Just HTML ™️ ---