diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs index ab9860bd3..cdc2b79dd 100644 --- a/docs/astro.config.mjs +++ b/docs/astro.config.mjs @@ -1,6 +1,7 @@ import { defineConfig } from 'astro/config'; import tailwindcss from '@tailwindcss/vite'; import { remarkRewriteLinks } from './src/plugins/remark-rewrite-links.mjs'; +import { rehypePagefindAttrs } from './src/plugins/rehype-pagefind-attrs.mjs'; export default defineConfig({ site: 'https://bradygaster.github.io', @@ -10,6 +11,7 @@ export default defineConfig({ }, markdown: { remarkPlugins: [remarkRewriteLinks], + rehypePlugins: [rehypePagefindAttrs], shikiConfig: { themes: { light: 'github-light', diff --git a/docs/package.json b/docs/package.json index 51b4d5702..c0e858c85 100644 --- a/docs/package.json +++ b/docs/package.json @@ -7,7 +7,10 @@ "dev": "astro dev", "build": "astro build && npx pagefind --site dist", "preview": "astro preview", - "astro": "astro" + "astro": "astro", + "test": "node --test tests/build-output.test.mjs && npx playwright test", + "test:build": "node --test tests/build-output.test.mjs", + "test:e2e": "npx playwright test" }, "dependencies": { "@tailwindcss/vite": "^4.1.0", diff --git a/docs/pagefind.yml b/docs/pagefind.yml new file mode 100644 index 000000000..282352e74 --- /dev/null +++ b/docs/pagefind.yml @@ -0,0 +1,12 @@ +# Pagefind configuration for Squad docs +# See: https://pagefind.app/docs/config-options/ + +# Exclude navigation, footers, and code blocks from indexing +exclude_selectors: + - "nav" + - "footer" + - "aside" + - "pre" + - ".astro-code" + + diff --git a/docs/playwright.config.mjs b/docs/playwright.config.mjs new file mode 100644 index 000000000..2c69a1ac9 --- /dev/null +++ b/docs/playwright.config.mjs @@ -0,0 +1,13 @@ +import { defineConfig } from '@playwright/test'; + +export default defineConfig({ + testDir: './tests', + testMatch: '**/*.spec.mjs', + timeout: 30_000, + retries: 0, + use: { + baseURL: 'http://localhost:4321/squad/', + browserName: 'chromium', + headless: true, + }, +}); diff --git a/docs/screenshots/before-search-agent.png b/docs/screenshots/before-search-agent.png new file mode 100644 index 000000000..b7832127e Binary files /dev/null and b/docs/screenshots/before-search-agent.png differ diff --git a/docs/screenshots/before-search-ceremony.png b/docs/screenshots/before-search-ceremony.png new file mode 100644 index 000000000..dc20655a0 Binary files /dev/null and b/docs/screenshots/before-search-ceremony.png differ diff --git a/docs/screenshots/before-search-install.png b/docs/screenshots/before-search-install.png new file mode 100644 index 000000000..9fe563b35 Binary files /dev/null and b/docs/screenshots/before-search-install.png differ diff --git a/docs/screenshots/search-agent.png b/docs/screenshots/search-agent.png new file mode 100644 index 000000000..73d9897b1 Binary files /dev/null and b/docs/screenshots/search-agent.png differ diff --git a/docs/screenshots/search-ceremony.png b/docs/screenshots/search-ceremony.png new file mode 100644 index 000000000..7939af7e9 Binary files /dev/null and b/docs/screenshots/search-ceremony.png differ diff --git a/docs/screenshots/search-install.png b/docs/screenshots/search-install.png new file mode 100644 index 000000000..656e20bd7 Binary files /dev/null and b/docs/screenshots/search-install.png differ diff --git a/docs/src/components/Footer.astro b/docs/src/components/Footer.astro index f44ae621e..e7ffa8e88 100644 --- a/docs/src/components/Footer.astro +++ b/docs/src/components/Footer.astro @@ -4,7 +4,7 @@ import squadLogo from '../assets/images/squad-logo.png'; const base = import.meta.env.BASE_URL; --- -