feat(website): redesign UX across landing and all listing pages#2191
Closed
IEvangelist wants to merge 3 commits into
Closed
feat(website): redesign UX across landing and all listing pages#2191IEvangelist wants to merge 3 commits into
IEvangelist wants to merge 3 commits into
Conversation
…ion guardrail Fixes accessibility violations found by an axe-core sweep of every website page in both light and dark themes: - aria-allowed-role (WCAG 1.3.1, 4.1.2): the shared resource card rendered an <article> with role="listitem", which is not an allowed role for that element. Switched the wrapper to a <div role="listitem"> so the listitem role is valid (affected every card, e.g. #arcade-canvas on /extensions/). - aria-required-children (WCAG 1.3.1): removed role="list" from the tools, contributors, and cookbook containers whose children are not list items. - nested-interactive (WCAG 4.1.2): removed tabIndex=0 from extension cards and rendered the author as a non-interactive span so no interactive control is nested inside another (the author link remains in the modal). - color-contrast (WCAG 1.4.3): gave .btn-primary explicit white text with an AA-compliant hover (#7326d6), and bumped the dark-theme secondary text gray (--sl-color-gray-3) to #84849c (5.32:1) so ToC / meta / footer text passes. Adds a checked-in regression guardrail: - website/scripts/a11y-audit.mjs runs axe-core over all routes in both themes against the production build and fails on critical/serious violations only (moderate/minor are reported but non-blocking). Transitions/animations are disabled before sampling so axe measures settled, steady-state colors instead of mid-theme-transition frames. - Adds npm scripts (website:a11y at the root, a11y in website/) and README docs. The matching Build Website CI step is proposed in the PR description (omitted from this commit because the authoring token lacks workflow scope). Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
- Fail fast when a route navigation returns a non-2xx response, so the
guardrail can't silently pass against a broken/missing route (page.goto
resolves even for 4xx/5xx).
- Launch the Astro preview server via `node <astro-bin>` instead of
`spawn(..., { shell: true })`. Removing the shell layer keeps signal
delivery / detached-PGID shutdown predictable; resolving Astro's bin and
running it with process.execPath also avoids the EINVAL that modern Node
raises when spawning the npx.cmd shim without a shell on Windows.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Reimagine the site with a modern, cohesive dark-tech language while preserving IA, routes, and copy voice. Header & theme - Replace the hero "View the repository on GitHub" text link with a far-right GitHub mark in the top nav. - Convert the 3-state theme pill into a single cycling icon toggle with an a11y label that reflects the active state. - Fix mobile nav cramping and title clipping. Landing - Recompose the hero and category cards; fix the mobile count overlap and add the missing category accent bar. Listing pages (agents, instructions, skills, hooks, workflows, plugins, tools, extensions) - Introduce a shared resource-card renderer (resource-card.ts) and a generic listing controller (listing-controller.ts) so every page uses one card system and one real, always-visible filter bar (search + sort + facet chips) instead of the broken <details> toggle. - Give each page a purpose-built identity: category accent, type icon, and per-type facts (model/tools for agents, author/keywords for extensions with icon thumbnails, features for tools, etc.). - Headings now use the landing category accent colors. Verified: astro build passes; axe a11y audit passes (12 routes x 2 themes, 0 critical/serious); desktop + mobile, dark + light checked. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
|
🔴 Contributor Reputation Check: HIGH risk
Maintainers: please review this contributor before merging. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Redesigns the Awesome GitHub Copilot website UX with a modern, cohesive dark-tech language while preserving IA, routes, and copy voice.
Note
This PR stacks on #2180 (WCAG a11y remediation). Until #2180 merges into
main, this PR's diff also shows those two a11y commits. Once #2180 lands, this collapses to the single UX commit. The UX work is built on top of the a11y base, so it merges cleanly.What changed
Header & theme
Landing
Listing pages (agents, instructions, skills, hooks, workflows, plugins, tools, extensions)
resource-card.ts) and a generic listing controller (listing-controller.ts) so every page uses one card system and one real, always-visible filter bar (search + sort + facet chips) in place of the broken<details>toggle.Verification
astro buildpasses (38 pages).npm run a11y) passes: 12 routes x 2 themes, 0 critical/serious violations.Rev notes