GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — docs: migrate docs and blog to Primer with Squad branding, hub blog, and accessibility sweep by IEvangelist · Pull Request #2447 · github/squad Conversation
|
| Light | Dark |
|---|---|
![]() |
![]() |
| Light | Dark |
|---|---|
![]() |
![]() |
| Post (dark) | Empty search (dark) |
|---|---|
![]() |
![]() |
| Light | Dark |
|---|---|
![]() |
![]() |
| Blog index, tablet, light | Landing, mobile, dark | Docs drawer, mobile, dark |
|---|---|---|
![]() |
![]() |
![]() |
Copilot review items fixed in aa54eb9: JSON-LD output is escaped (no < can close the script element), the non-docs hamburger uses the breakpoint where its menu is visible, stale search failures and options are ignored or cleared while typing, previously open dropdown triggers reset, pagination keeps keyboard focus, the result-count live region stays in the accessibility tree on small screens, and the blog lead blockquote is only dropped when it duplicates the hero (the archive notice on the Wave 2 post is kept). Each has a regression test in docs/tests/a11y.spec.mjs.
#anchors in docs content (e.g. relative first-session link, /features/... links missing the site base). Out of scope; happy to fix in a follow-up.None. The look of the docs/blog changes intentionally; URLs, content and Pagefind selectors are unchanged.
None.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Replace Tailwind and the custom pink/navy theme with @primer/css and @primer/primitives. Theme via data-color-mode, add an accessible search dialog and sidebar drawer, switch Shiki to high-contrast themes, and add axe-core WCAG A/AA, theme, keyboard and mobile e2e checks. Co-authored-by: Copilot App <[email protected]>
Layer a Squad brand skin over Primer tokens (rose/teal on navy ink, Mona Sans, framed dotted-rail layout, grid and grain texture, glows, spotlight cards, reading progress). Rebuild the landing page, add a filterable hub-style blog with featured cells and article layout, and polish docs with breadcrumbs, active TOC and pager. Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Branded dialog with blurred backdrop, suggestions, section glyphs and paths, highlighted excerpts, arrow-key navigation and key hints. Co-authored-by: Copilot App <[email protected]>
Custom sort and page-size dropdowns, square checkbox filters, hub chips, and lighter 22px card titles modelled on awesome-copilot's learning hub. Co-authored-by: Copilot App <[email protected]>
…; hub pagination; remove footer gap Co-authored-by: Copilot App <[email protected]>
… root scrollbar contrast Co-authored-by: Copilot App <[email protected]>
…ssibility sweep and contrast fixes Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
…ktop layout Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
…ma and test updates - Rewrite five docs/package-lock.json entries from an internal feed to registry.npmjs.org with sha512 integrity (release-lockfile-registry gate) - Reset search state synchronously on close/cancel so reopening quickly does not drop or keep typed text - Commit regenerated .astro collection schemas (blog hero/wave fields) - Relax docs-build table assertion for focusable scrollable tables Co-authored-by: Copilot App <[email protected]>
npm run screenshots captures every layout page on mobile, tablet and desktop in light and dark mode and writes an HTML gallery. Co-authored-by: Copilot App <[email protected]>
…cked files Co-authored-by: Copilot App <[email protected]>
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Unescaped frontmatter titles in JSON-LD can allow script injection on the docs origin, alongside unresolved search, navigation, and accessibility regressions.
docs/package-lock.json: Generated fileMigrates Squad’s Astro docs and blog from Tailwind to Primer, retaining Squad branding while adding richer navigation, search, and accessibility support.
Changes:
| File | Description |
|---|---|
test/docs-build.test.ts |
Allows attributes on rendered tables. |
docs/tests/sidebar.spec.mjs |
Tests section collapsing and current-page visibility. |
docs/tests/search.spec.mjs |
Updates search assertions for the redesigned dialog. |
docs/tests/search-keyboard.spec.mjs |
Covers keyboard navigation, clearing, reopening, and scroll locking. |
docs/tests/blog.spec.mjs |
Tests blog filtering, sorting, pagination, and article navigation. |
docs/tests/a11y.spec.mjs |
Adds accessibility, theme, mobile, and breadcrumb checks. |
docs/tests/a11y-sweep.spec.mjs |
Checks sampled pages and interactive states with axe. |
docs/src/styles/site.css |
Adds Primer-based site layout and content styles. |
docs/src/styles/global.css |
Removes the Tailwind theme and utilities. |
docs/src/styles/brand.css |
Adds Squad branding, visual effects, and component styling. |
docs/src/styles/blog.css |
Styles the blog hub, controls, cards, and articles. |
docs/src/plugins/rehype-a11y.mjs |
Adds markdown table, checkbox, and heading accessibility transforms. |
docs/src/pages/blog/index.astro |
Implements the searchable, filterable, paginated blog hub. |
docs/src/pages/blog/[...slug].astro |
Adds article metadata, breadcrumbs, and a table of contents. |
docs/src/pages/404.astro |
Migrates the error page to Primer styling. |
docs/src/lib/breadcrumbs.ts |
Derives docs breadcrumbs from navigation data. |
docs/src/lib/blog.ts |
Shares blog categorization and formatting helpers. |
docs/src/layouts/DocsLayout.astro |
Integrates breadcrumbs, Primer layout, and redesigned paging. |
docs/src/layouts/BaseLayout.astro |
Loads styles and fonts; updates theming and shared enhancements. |
docs/src/content.config.ts |
Adds optional blog hero and wave metadata. |
docs/src/components/ThemeToggle.astro |
Switches Primer color modes and updates accessible labels. |
docs/src/components/TableOfContents.astro |
Highlights the article section currently in view. |
docs/src/components/Sidebar.astro |
Adds collapsible sections and current-page centering. |
docs/src/components/Search.astro |
Implements native-dialog search with grouped results and keyboard controls. |
docs/src/components/Icon.astro |
Provides shared decorative Octicons. |
docs/src/components/Header.astro |
Updates responsive navigation and drawer controls. |
docs/src/components/Footer.astro |
Uses structured navigation columns and build metadata. |
docs/src/components/Breadcrumbs.astro |
Renders breadcrumb navigation and structured data. |
docs/scripts/capture-screenshots.mjs |
Captures responsive themed screenshots and generates a gallery. |
docs/README.md |
Documents Primer styling, accessibility tests, and screenshots. |
docs/package.json |
Replaces Tailwind dependencies and adds accessibility tooling. |
docs/astro.config.mjs |
Registers accessibility transforms and high-contrast code themes. |
docs/.gitignore |
Ignores screenshots and test results. |
docs/.astro/content.d.ts |
Refreshes the generated content configuration import path. |
docs/.astro/collections/blog.schema.json |
Reflects the new blog metadata fields. |
Review effort: Balanced (auto)
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
- Escape JSON-LD output so titles cannot close the script element - Hamburger breakpoint matches the menu it opens on non-docs pages - Search: ignore stale failures and drop stale options while typing - Dropdowns reset the previously open trigger state - Pagination keeps keyboard focus after rebuild - Result count live region stays in the accessibility tree on small screens - Only drop the blog lead blockquote when it duplicates the hero Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
|
holy cow. thank you, @IEvangelist!!!! this is amazing. cc @tamirdresher |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
… hover layout shift) Co-authored-by: Copilot App <[email protected]>
Co-authored-by: Copilot App <[email protected]>
There was an error while loading. Please reload this page.
🟠 Impact Analysis — PR #2447Risk tier: 🟠 HIGH 📊 Summary
🎯 Risk Factors
📦 Modules Affecteddocs (35 files)
tests (1 file)
|
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
🏗️ Architectural Review
Automated architectural review — informational only. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
🔒 Security Review
🔒 Security review: 1 info.
Automated security review — informational only. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
🛫 PR Readiness Check
PR Scope: 🔧 Infrastructure
|
| Status | Check | Details |
|---|---|---|
| ❌ | Single commit | 29 commits — consider squashing before review |
| ✅ | Not in draft | Ready for review |
| ✅ | Branch up to date | Up to date with dev |
| ❌ | Copilot review | No Copilot review yet — it may still be processing |
| ✅ | Changeset present | No source files changed — changeset not required |
| ✅ | Scope clean | No .squad/ or docs/proposals/ files |
| ✅ | No merge conflicts | No merge conflicts |
| ✅ | Copilot threads resolved | 1 active Copilot thread(s) resolved (7 outdated skipped) |
| ❌ | CI passing | 5 check(s) still running |
| File | +/− |
|---|---|
docs/.astro/collections/blog.schema.json |
+9 −0 |
docs/.gitignore |
+2 −0 |
docs/README.md |
+12 −2 |
docs/astro.config.mjs |
+4 −5 |
docs/package-lock.json |
+61 −777 |
docs/package.json |
+6 −3 |
docs/scripts/capture-screenshots.mjs |
+226 −0 |
docs/src/components/Breadcrumbs.astro |
+53 −0 |
docs/src/components/Footer.astro |
+66 −41 |
docs/src/components/Header.astro |
+52 −68 |
docs/src/components/Icon.astro |
+38 −0 |
docs/src/components/Search.astro |
+209 −112 |
docs/src/components/Sidebar.astro |
+43 −97 |
docs/src/components/TableOfContents.astro |
+63 −45 |
docs/src/components/ThemeToggle.astro |
+32 −14 |
docs/src/content.config.ts |
+2 −0 |
docs/src/layouts/BaseLayout.astro |
+38 −20 |
docs/src/layouts/DocsLayout.astro |
+27 −29 |
docs/src/lib/blog.ts |
+38 −0 |
docs/src/lib/breadcrumbs.ts |
+39 −0 |
docs/src/pages/404.astro |
+7 −7 |
docs/src/pages/blog/[...slug].astro |
+45 −19 |
docs/src/pages/blog/index.astro |
+373 −34 |
docs/src/pages/index.astro |
+185 −329 |
docs/src/plugins/rehype-a11y.mjs |
+59 −0 |
docs/src/styles/blog.css |
+237 −0 |
docs/src/styles/brand.css |
+597 −0 |
docs/src/styles/global.css |
+0 −389 |
docs/src/styles/site.css |
+316 −0 |
docs/tests/a11y-sweep.spec.mjs |
+87 −0 |
docs/tests/a11y.spec.mjs |
+227 −0 |
docs/tests/blog.spec.mjs |
+82 −0 |
docs/tests/search-keyboard.spec.mjs |
+79 −0 |
docs/tests/search.spec.mjs |
+15 −15 |
docs/tests/sidebar.spec.mjs |
+39 −60 |
test/docs-build.test.ts |
+1 −1 |
Total: +3369 −2067
This check runs automatically on every push. Fix any ❌ items and push again.
See CONTRIBUTING.md and PR Requirements for details.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
…tree guard stays clean Co-authored-by: Copilot App <[email protected]>
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.