thehardwarestore.ai

where AI agents shop for the right tools

── 99260 repos indexed ── | filtered by tag: #headless-ui
refinedev/refine ★ 35741 3228 APPLICATION

Refine is a headless React framework for building data-intensive applications like admin panels, dashboards, and internal tools. It provides a UI-agnostic core with adapters for Ant Design, Material UI, Mantine, and Chakra UI, plus data providers for REST, GraphQL, Supabase, Strapi, and other backends. The architecture centers around provider patterns (dataProvider, authProvider, etc.) and React Query-based hooks for data fetching and mutations. Key features include automatic CRUD generation via inferencer, undoable notifications, access control, i18n, and live updates. The monorepo structure manages numerous packages and examples, demonstrating a mature ecosystem with active development and comprehensive documentation.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 3 reusable components found
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
alpinejs/alpine ★ 31967 1390 APPLICATION

Alpine.js is a lightweight, declarative JavaScript framework for building interactive web interfaces directly in HTML. It provides a collection of reactive directives (x-data, x-bind, x-on, x-show, x-model, x-for, x-text, x-transition, etc.) that are evaluated on DOM nodes, enabling dynamic behavior without a build step. The framework is structured as a monorepo with a core package (alpinejs) and a plugin ecosystem including morph, persist, focus, intersect, mask, collapse, sort, anchor, navigate, history, and a headless UI component library. The core uses @vue/reactivity for reactive proxies and effects, with a custom scheduler that prioritizes structural directives (x-if, x-for, x-teleport) to ensure correct DOM mutation ordering. A CSP-compatible build replaces the default expression evaluator with a full tokenizer, parser, and runtime that blocks eval, Function, and dangerous DOM access, making it suitable for Content Security Policy-restricted environments. The architecture is directive-based: each directive is a function that receives the element, expression, and modifiers, and is registered via Alpine.directive(). Magics ($el, $refs, $store, $watch, $id, etc.) provide reactive access to framework internals. The plugin system allows third-party extensions to register directives, magics, and data providers. The headless UI components (listbox, combobox, dialog, menu, popover, radio, switch, tabs) are built entirely with Alpine directives and follow a consistent pattern using Alpine.bind for attribute/event binding and Alpine.magic for exposing component state. The morph plugin provides a DOM diffing engine that can update HTML while preserving Alpine state, with support for teleport and x-for keyed reconciliation. Key entry points include the core CDN build (packages/alpinejs/builds/cdn.js), the CSP build (packages/csp/builds/cdn.js), and individual plugin builds. The framework has no server-side dependencies and works by scanning the DOM on page load, initializing components defined by x-data, and setting up reactive effects. Data flows from component data (defined in x-data or Alpine.data()) through reactive proxies to DOM updates via directives. External dependencies are minimal: @vue/reactivity for reactivity, and the CSP parser is self-contained. The test suite uses Cypress for integration tests and Vitest for unit tests, covering all directives, magics, and plugins. This is a production-grade framework with a large user base, active maintenance, and a well-defined extension API. The codebase demonstrates high craftsmanship in areas like the CSP expression parser, the morph engine, and the interceptor pattern for data transformation. Some legacy code (old_morph.js) and deprecated plugins (history, navigate) are present but do not detract from the overall quality.

RATING: 9.3/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
blazorblueprintui/ui ★ 591 48 APPLICATION

BlazorBlueprint is a comprehensive Blazor UI component library inspired by shadcn/ui, providing over 112 styled components and 28 headless primitives. It targets .NET 8 across Server, WebAssembly, and Auto render modes, with full accessibility (ARIA, keyboard navigation), theming via CSS custom properties (compatible with shadcn CSS variables), and zero Tailwind/Node setup. The library is split into two layers: Primitives (headless, behavioral components with focus management, positioning, and portal services) and Components (styled, ready-to-use widgets like DataGrid, charts, forms, dialogs, and navigation). It ships with four icon libraries (5,200+ icons) and 11 chart types via Apache ECharts. The architecture emphasizes composability through cascading contexts, a consistent form-field pattern, and a utility-first approach with the ClassNames.cn helper for Tailwind class merging. The codebase demonstrates strong engineering practices: extensive use of generics, expression trees for filtering, JS interop with guarded disposal, and a localization system with 200+ string keys. However, the large API surface, heavy JS interop, and limited test coverage (only a few unit tests for DataGrid and hierarchy utilities) present maintenance risks.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
elastic/search-ui ★ 1979 383 APPLICATION

Elastic Search UI is a monorepo of JavaScript libraries for building modern, customizable search experiences with Elasticsearch and related backends. The core package (`@elastic/search-ui`) provides a headless state manager (`SearchDriver`) that handles search state, actions, request sequencing, debouncing, URL synchronization, and plugin hooks. React bindings (`@elastic/react-search-ui`) offer a `SearchProvider` context, a `withSearch` HOC, and container components (SearchBox, Facet, Paging, Results, etc.) that delegate rendering to stateless view components from `@elastic/react-search-ui-views`. Multiple backend connectors implement a common `APIConnector` interface: the primary Elasticsearch connector builds DSL via query builders and supports request/response interception; deprecated connectors exist for App Search, Workplace Search, and Site Search. The library also includes an analytics plugin (deprecated) and a Vue.js example. The architecture follows a clean container/view separation, making it framework-agnostic at the core and highly customizable via render props and view overrides.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: