thehardwarestore.ai

where AI agents shop for the right tools

── 99240 repos indexed ── | filtered by tag: a11y
ariakit/ariakit ★ 8626 423 APPLICATION

Ariakit is a headless, accessible UI component library for React and Solid, providing accessible, composable primitives (dialog, combobox, menu, tooltip, select, etc.) with a store-based state management pattern, provider/context, and hooks. It also includes a styled UI layer (Ariakit UI) with CSS variants. The architecture is a monorepo with multiple packages: core stores, React components, Solid components, test utilities, UI styles, and a documentation website (Astro + Next.js). The system is actively maintained with extensive testing, accessibility focus, and a monorepo structure. The codebase demonstrates high craftsmanship with reusable patterns like portal, focus trap, tree snapshot, polygon geometry for hovercards, undo manager, and test utilities. The project is actively maintained with recent commits, active issue triage, and low technical drift.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 6 reusable components found
chakra-ui/chakra-ui ★ 40670 3647 APPLICATION

Chakra UI is a React component library that provides accessible, customizable UI components with a design system foundation. The monorepo contains the core component library (@chakra-ui/react), styling system (Emotion-based with Panda CSS preset), CLI tools for project scaffolding and codemods for migration, a Next.js documentation site, an interactive example gallery, framework sandboxes for Next.js/Remix/Vite integration, and an MCP server for AI tool access. The architecture emphasizes composable APIs, theme-driven design via design tokens, and comprehensive accessibility coverage. Key entry points include the core library index, styled system factory, CLI commands, documentation layout, example compositions, and MCP server entry point.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 10 reusable components found
opendataloader-project/opendataloader-pdf ★ 29484 2809 APPLICATION

OpenDataLoader-PDF is a production-grade, multi-language PDF-to-structured-content extraction tool designed for AI/LLM pipelines, RAG systems, and accessibility workflows. It converts PDFs into JSON, Markdown, HTML, plain text, and tagged PDF (PDF/UA) with high accuracy (0.907 overall benchmark). The core engine is written in Java (veraPDF-based) and provides a rich CLI, while Python and Node.js SDKs bundle the Java JAR and expose idiomatic APIs. A hybrid mode routes pages to an external AI backend (Docling) for OCR, formula extraction, and picture descriptions, with a triage processor deciding per-page routing based on content signals. The project also includes an MCP server for AI agent integration, a LangChain loader, and an agent skill bundle for correct usage.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 7 reusable components found
grommet/grommet ★ 8352 1039 APPLICATION

Grommet is a React-based UI component library focused on providing accessible, responsive, and themeable components for building web applications. The architecture is modular, exporting components, contexts, themes, and utilities from a central index. Key entry points include src/js/index.js (main export) and the component directories under src/js/components/. The library relies on React and styled-components as core dependencies, with theming via ThemeContext, responsive design utilities, and controlled/uncontrolled patterns. Data flows are managed through component props and context rather than internal data processing, making it a presentation-layer library. The codebase demonstrates strong engineering practices through its use of deepMerge for theming, responsive value resolution, and reusable hooks like useControlled.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
tailwindlabs/headlessui ★ 28767 1208 APPLICATION

Headless UI is a library of completely unstyled, fully accessible UI components for React and Vue. It provides behavior-only primitives like Combobox, Listbox, Dialog, Popover, Tabs, RadioGroup, and Switch, with no built-in styling, allowing consumers to own the visual layer. The architecture is a monorepo with parallel React and Vue packages that share identical component APIs, test suites, and accessibility patterns, ensuring feature parity across frameworks. Components use render props (React) and slots (Vue) to expose state like open, active, selected, and disabled, plus an `as` prop for polymorphic rendering and a Transition component for enter/leave animations. The codebase is heavily tested with thousands of test cases covering keyboard navigation, focus management, ARIA attributes, form integration, and edge cases like dynamic children and virtual scrolling. Key entry points include the Combobox, Listbox, and Dialog components in both React and Vue, along with shared test utilities for accessibility assertions and interaction simulation. The library is actively maintained with a focus on accessibility-first design, headless composition, and cross-framework consistency.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
satnaing/astro-paper ★ 5016 1089 APPLICATION

AstroPaper is a minimal, responsive, accessible and SEO-friendly Astro blog theme/template. It provides a complete blogging platform with features like light/dark mode toggle, dynamic OG image generation, static search with Pagefind, RSS/sitemap generation, tag and archive pages, and internationalization support. Built with Astro v6, Tailwind CSS v4, and TypeScript, it follows modern web development practices with a component-based architecture. The theme separates concerns effectively: configurations in astro-paper.config.ts, resolved settings in src/config.ts, UI components in src/components/, layouts in src/layouts/, pages in src/pages/, and content in src/content/. It handles complex edge cases like Unicode slugification, timezone-aware date formatting, and view transition compatibility with thoughtful, reusable utilities.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found
pa11y/pa11y ★ 4510 298 APPLICATION

Pa11y is a mature, widely-used automated accessibility testing tool that runs via command-line interface or Node.js API. It drives a headless Chrome browser (via Puppeteer) to load web pages, execute optional user interactions (actions), and then run one or more accessibility test runners (HTML_CodeSniffer and axe-core) against the page. Results are reported in multiple formats (CLI, CSV, JSON, HTML, TSV) and can be filtered by severity, ignored rules, or threshold. The architecture is a monolith library with a thin CLI wrapper, but the runner and reporter systems are modular and extensible via npm packages or local files. Key entry points are `bin/pa11y.js` for CLI and `lib/pa11y.js` for programmatic use. The data flow: launch Chrome, navigate to URL, run actions, inject runner scripts into the page, evaluate accessibility, collect and process issues, output via selected reporter. External dependencies include Puppeteer, axe-core, @pa11y/html_codesniffer, commander, and several utility libraries. The codebase is well-structured, thoroughly tested (unit and integration), and follows modern Node.js practices with async/await and ES6+ features.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 2 reusable components found
brunopulis/awesome-a11y ★ 1985 227 DATA_RESEARCH

This repository is a curated collection of accessibility resources organized as an 'awesome list'. It contains no executable code or data processing pipelines, but rather serves as a reference directory linking to external accessibility tools, articles, guidelines, and communities. The content is structured into topic-specific markdown files (e.g., tools.md, blogs.md, laws.md) that catalog resources with metadata like names, descriptions, and languages. The project relies on community contributions following strict guidelines to maintain alphabetical order, avoid duplicates, and ensure quality. A GitHub Actions workflow automatically validates markdown links on every push to combat link rot, demonstrating a commitment to data integrity. As a pure data repository, its value lies in the organized aggregation of third-party resources rather than any internal transformation or analysis.

RATING: 7.9/10 REPRO: 9.5/10 MAINT: active DRIFT: low
▸ 1 reusable components found
w3c/html-aria ★ 202 51 APPLICATION

The w3c/html-aria repository maintains the ARIA in HTML W3C specification — a normative document defining which ARIA roles, states, and properties are permitted on each HTML element, plus the implicit ARIA semantics of native HTML. It is not a conventional application; it is a standards artifact with engineered supporting infrastructure: a ReSpec-based spec source (`index.html`) auto-published to gh-pages via GitHub Actions, a corpus of standalone HTML conformance test pages in `tests/`, and a cross-tool implementation report in `results/implementation-results.html`. The repo functions as the authoritative rulebook that accessibility conformance checkers (Nu HTML Validator, axe-core, IBM Equal Access, ARC Toolkit) implement against, so its 'production output' is normative rules consumed by validator software. The test corpus encodes each normative rule as a discrete, self-contained HTML page with explicit pass/fail expectations — for example, pages verifying that `aria-hidden="true"` is forbidden on focusable elements, that `aria-rowspan` must not coexist with a native `rowspan`, and which roles are allowed on `button`, `summary`, `img`, and `li`. The implementation report tracks, per rule and per vendor tool, whether the rule is implemented (yes/partial/missing), linking to tool-specific GitHub issues. The contribution workflow enforces cross-repo coordination: normative changes require a corresponding web-platform-tests PR and coordination with checker maintainers before merging, which is an unusually well-governed process for a spec repository. Maintenance is steady: commits continue through late 2026, the implementation report was updated in March 2026, Dependabot monitors GitHub Actions, and the W3C auto-publish pipeline runs on every push. Technical drift is low — the spec deliberately tracks the WHATWG HTML Living Standard, deprecates (rather than abandons) outdated ARIA features, and is built on the actively maintained ReSpec toolchain. The main fragility is external: implementation gaps in vendor checkers are documented openly in the report, and cross-repo synchronization with WPT and checker projects creates coordination risk, but the repo itself is current and professionally curated.

RATING: 7.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found

This repository is a web component library focused on accessibility, providing custom HTML elements for building inclusive web applications. It implements alternative input methods including standard mouse/keyboard/touch and pose/body tracking using TensorFlow's PoseNet model. The architecture follows web component principles using LitElement and Polymer, with a clear hierarchy of base classes (AbstractInputElement, AbstractUIElement) and specialized components for various UI patterns. The library emphasizes accessibility features like ARIA support, keyboard navigation, and screen reader compatibility. The codebase demonstrates strong craftsmanship in its utility implementations, particularly in coordinate transformation handling (mouse-position.ts), vector mathematics (vec2.ts), and general-purpose helper functions (utils.ts). The webcam integration (webcam.ts) shows proper resource management and lifecycle handling. However, the library suffers from significant technical drift due to outdated dependencies (lit-element 0.5.2, tfjs 0.13.0, typescript 3.1.6), which would require substantial updates for modern use. While the core architectural patterns are sound, the dependency versions limit practical reusability without migration work.

RATING: 6.0/10 MAINT: maintained DRIFT: high
▸ 4 reusable components found
── end of results ──
$ submit: