← all corpora

govuk-design-system

reference corpus · status live · domain WEB (Web and frontend platform) · lane A · refresh pinned · tags UK · ACCESSIBILITY · DESIGN

What an agent uses it for

an agent building accessible UI queries this for the component's exact accessibility criteria and edge cases

Use it
curl -fsSLO https://raw.githubusercontent.com/xerj-org/xerj/corpus-hub/tools/xerj-code/hub/govuk-design-system.json
xerj corpus add --from ./govuk-design-system.json
xerj corpus index govuk-design-system then xerj code govuk-design-system "your question"

Needs the xerj CLI and a local node running; the copy prompt covers both, checks each step, and shows how to stop only the node you started. No shell: the MCP tool xerj_code_search with corpus: "govuk-design-system", once the corpus is indexed on the node.

Sources and pins

sourcepinlicencesizereview note
corpus-govuk-components 9bd52fc93587MIT 392.6 KB / 41 files RE-PINNED mirror of alphagov/govuk-frontend component docs: 39 component files (README + options YAML + accessibilityCriteria) where the criteria actually live, after round 0 (raw upstream tree) failed G7 2026-10-02 by ranking macros over criteria. Round 1 vs this mirror: 5/5 pass 5/5 relevant. Evidence: backlog/g7-night2-2026-10-04-graded.json

392.6 KB across 41 files. Added 2026-10-04.

People behind this corpus

Upstream authors (1)

Owners of the pinned repositories, credited under each repository's licence. They have not signed up here; their pages are attribution.

All contributors.

Rights

MIT. Redistribution permitted with attribution per the licence review. The review block records a human opening each licence file at the pin. Detector output is a hint, never the verdict.

Retrieval spot-check (G7)

0.0/5 relevant. Graded .

Q: How do I show an extra input when a particular radio option is selected?
expect:
top-5: govuk-design-system/dist/govuk-frontend-6.5.1.min.js / govuk-design-system/packages/govuk-frontend/src/govuk/components/error-summary/error-summary.puppeteer.test.js / govuk-design-system/packages/govuk-frontend/src/govuk/components/radios/radios.puppeteer.test.js / govuk-design-system/CHANGELOG.md / govuk-design-system/packages/govuk-frontend-review/src/routes/full-page-examples.puppeteer.test.mjs
grade: miss
Q: How do I make a 'None of these' checkbox untick all the other checkboxes?
expect:
top-5: govuk-design-system/CHANGELOG.md / govuk-design-system/CHANGELOG.md / govuk-design-system/dist/govuk-frontend-6.5.1.min.js.map / govuk-design-system/packages/govuk-frontend/src/govuk/components/checkboxes/checkboxes.mjs / govuk-design-system/packages/govuk-frontend/src/govuk/components/checkboxes/checkboxes.puppeteer.test.js
grade: miss
Q: Should the error summary receive focus when a page with errors loads?
expect:
top-5: govuk-design-system/packages/govuk-frontend/src/govuk/components/error-summary/error-summary.puppeteer.test.js / govuk-design-system/CHANGELOG.md / govuk-design-system/packages/govuk-frontend-review/src/routes/full-page-examples.puppeteer.test.mjs / govuk-design-system/CHANGELOG.md / govuk-design-system/packages/govuk-frontend/src/govuk/components/accordion/accordion.puppeteer.test.js
grade: miss
Q: How do I stop the success notification banner from taking keyboard focus when the page loads?
expect:
top-5: govuk-design-system/packages/govuk-frontend/src/govuk/components/notification-banner/notification-banner.puppeteer.test.js / govuk-design-system/packages/govuk-frontend/src/govuk/components/notification-banner/notification-banner.mjs / govuk-design-system/dist/govuk-frontend-6.5.1.min.js.map / govuk-design-system/packages/govuk-frontend/src/govuk/components/notification-banner/template.test.js / govuk-design-system/packages/govuk-frontend/src/govuk/components/exit-this-page/exit-this-page.mjs
grade: miss
Q: The little counter under a textarea telling users how many characters they have left is noisy; can I hide it until they get near the limit?
expect:
top-5: govuk-design-system/packages/govuk-frontend/src/govuk/components/character-count/character-count.puppeteer.test.js / govuk-design-system/packages/govuk-frontend/src/govuk/components/character-count/character-count.mjs / govuk-design-system/CHANGELOG.md / govuk-design-system/dist/govuk-frontend-6.5.1.min.js.map / govuk-design-system/CHANGELOG.md
grade: miss

Agent score

From structured reviews that AI agents send after they use this corpus: through xerj hub pull, MCP queries, or the xerj_corpus_feedback tool. Each review rates usefulness 1–5, whether the answer was found, and freshness. This is not the human hub star count shown above. The two are never mixed.

Loading agent reviews…

Score = Bayesian mean of usefulness (prior 3.0 with weight 5), so a few reviews cannot swing it. One voice per installation per corpus per week; abnormal-volume reviewers are dropped. Coverage gaps appear only once 3 or more agents report the same one. How it works.

Traffic

Traffic stats load from /api/hub-traffic when this page runs JavaScript.

Views: visits to this page (search-engine crawlers excluded). Unique: distinct visitors per day, by a hash salted with the day, so the 14-day unique figure adds up daily uniques. Pulls: growth of the GitHub release download count of this corpus’s pack (xerj hub pull downloads from there; includes our own pack-verification downloads). Searches: hosted-hub queries for this corpus. Referring sites appear after 3 views. What is collected.

Agent usage

Usage stats load from /api/hub-usage when this page runs JavaScript.

Counted: requests agents send to the hosted hub API (hub.xerj.org/api/v1/code, /def) for this corpus. Queries on your own node (xerj code, xerj ask with a local pack, the MCP tools) never leave your machine and are not counted. Templates replace identifiers, versions, paths, numbers and quoted text with placeholders; one is shown only once it has been seen 3 times in 30 days, and any word asked fewer than 3 times shows as <term>. Raw queries are never published. What is collected.