diff --git a/www/astro.config.mjs b/www/astro.config.mjs index 0d7e4c1..200785d 100644 --- a/www/astro.config.mjs +++ b/www/astro.config.mjs @@ -1,10 +1,35 @@ +import sitemap from "@astrojs/sitemap"; import starlight from "@astrojs/starlight"; import { defineConfig } from "astro/config"; +// Canonical site URL — required for sitemap, canonical links, +// and the absolute URLs Starlight emits in Open Graph/Twitter meta. +const SITE_URL = "https://simple-stack.dev"; + +// Site-wide structured data (Organization) for AEO / AI citations. +// Helps ChatGPT, Perplexity, Gemini, and Google AI Overviews +// disambiguate the project as an entity. +const organizationJsonLd = { + "@context": "https://schema.org", + "@type": "Organization", + name: "Simple Stack", + url: SITE_URL, + logo: `${SITE_URL}/favicon.svg`, + description: + "Simple Stack is a suite of small, focused open-source tools for Astro and Vite that simplify common web development workflows.", + sameAs: [ + "https://github.com/bholmesdev/simple-stack", + "https://wtw.dev/chat", + ], +}; + export default defineConfig({ + site: SITE_URL, integrations: [ starlight({ title: "Simple Stack 🌱", + description: + "A suite of small, focused tools for Astro and Vite. Includes Simple Store, Simple Scope, and Simple Query — built to simplify your workflow.", social: [ { icon: "github", @@ -13,6 +38,13 @@ export default defineConfig({ }, { icon: "discord", label: "Discord", href: "https://wtw.dev/chat" }, ], + head: [ + { + tag: "script", + attrs: { type: "application/ld+json" }, + content: JSON.stringify(organizationJsonLd), + }, + ], sidebar: [ { label: "💾 Store", @@ -44,5 +76,6 @@ export default defineConfig({ "./src/styles/custom.css", ], }), + sitemap(), ], }); diff --git a/www/package.json b/www/package.json index 8afa5ca..742f06f 100644 --- a/www/package.json +++ b/www/package.json @@ -17,6 +17,7 @@ }, "dependencies": { "@astrojs/check": "^0.9.6", + "@astrojs/sitemap": "^3.2.1", "@astrojs/starlight": "^0.37.1", "@fontsource/atkinson-hyperlegible": "^5.0.18", "astro": "^5.16.6", diff --git a/www/public/robots.txt b/www/public/robots.txt new file mode 100644 index 0000000..c483635 --- /dev/null +++ b/www/public/robots.txt @@ -0,0 +1,24 @@ +# https://simple-stack.dev/robots.txt +User-agent: * +Allow: / + +# AI crawlers — explicitly allowed for AEO / AI citation visibility. +User-agent: GPTBot +Allow: / + +User-agent: OAI-SearchBot +Allow: / + +User-agent: ChatGPT-User +Allow: / + +User-agent: PerplexityBot +Allow: / + +User-agent: Google-Extended +Allow: / + +User-agent: ClaudeBot +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..926880f 100644 --- a/www/src/content/docs/index.mdx +++ b/www/src/content/docs/index.mdx @@ -1,10 +1,7 @@ --- -title: Simple stack 🌱 -description: A suite of tools built for Astro to simplify your workflow. +title: Simple Stack — small, focused tools for Astro +description: Simple Stack is a suite of small, focused open-source tools for Astro and Vite. Includes Simple Store, Simple Scope, and Simple Query — built to simplify common web development workflows. tableOfContents: false -head: - - tag: title - content: Simple stack 🌱 --- A collection of tools I've built to **make web development simpler.**