30 open-source projects similar to downshift-js/downshift, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Downshift alternative.
Base UI is a headless component library and unstyled framework providing accessible interface primitives. It decouples behavioral logic and state management from the visual layer, allowing developers to implement complex UI patterns while maintaining total control over the final styling. The library implements WAI-ARIA design patterns to ensure all primitives support standard keyboard navigation and screen reader accessibility. It provides a suite of low-level building blocks that handle the internal mechanics of interface elements without bundling any CSS. The framework covers a broad range
Ark is a headless UI component library that delivers accessible, cross-framework primitives with behavior governed by finite state machines. It provides unstyled components that encapsulate logic and accessibility — including full keyboard navigation, focus management, and WAI-ARIA support — while leaving visual styling entirely to the consumer. Components expose scoped data attributes for CSS targeting and use state machines to produce predictable, testable interactive behavior across every state transition. The library distinguishes itself through a state propagation model that distributes
Headless UI is a headless component library and accessible UI component kit that provides logic-only interface elements. It functions as a state-driven UI framework designed to provide functionality without prescribing any specific visual styles. The library is specifically designed for integration with Tailwind CSS, enabling the implementation of custom design systems. It allows users to apply visual styles to components based on whether they are active, selected, or open. The project covers the development of accessible UI components that meet ARIA standards and include built-in keyboard n
React Autosuggest is a fully controlled React component that provides an autocomplete input with a dropdown of suggestions as the user types. It delegates all state management to the parent component through callbacks, making it compatible with state management patterns like Flux or Redux. The component implements WAI-ARIA accessibility patterns, including keyboard navigation with arrow keys, Enter, and Escape, along with live region integration for screen reader announcements. The component offers extensive customization through render-prop functions, allowing developers to replace the defau
This project is a framework-agnostic library for building accessible, search-as-you-type interfaces. It provides a headless logic layer that decouples search state management and result filtering from the visual presentation, allowing developers to maintain full control over the underlying HTML structure and styling. The library distinguishes itself through a highly modular architecture that supports multi-source data aggregation, enabling the combination of results from static arrays, remote APIs, and external indices into a single interface. It features a flexible rendering engine that inte
Selectize.js is a jQuery-based autocomplete library and tagging interface component. It functions as a searchable selection tool that combines a text input field with a dropdown select box to facilitate fast item lookup and the management of discrete tags. The project specializes in remote data input, allowing it to fetch, rank, and integrate options from a server in real-time as a user types. It utilizes a weighted search ranking system to score and sort results by scanning multiple text fields for relevance. The library covers a broad range of user interface capabilities, including multi-s
Zag is a headless UI state machine library that provides unstyled component logic to ensure consistent behavior across different rendering engines. It functions as a toolkit for modeling complex user interface interactions using statecharts, decoupling the underlying logic and accessibility attributes from visual styling. The library is framework-agnostic, utilizing specialized adapters to bridge its state machine logic with various JavaScript libraries such as React, Solid, Vue, and Svelte. This approach allows developers to maintain a single interaction model while applying any CSS or styli
Ariakit is a headless component library and accessible UI component toolkit. It provides a set of unstyled web components with built-in accessibility patterns to ensure that screen readers and keyboard navigation function correctly. The project includes an adaptive color engine that calculates high-contrast text and dynamic surface colors for light and dark modes. It also features a concentric layout engine for computing nested padding, margins, and border radii for circular interface elements, alongside a design token system for managing global CSS variables. The toolkit covers broad capabi
cmdk is an unstyled, headless React component library for building accessible search-based navigation and command interfaces. It provides the logic and state management required to create keyboard-navigable command palettes that filter lists of actions and items based on user input. The library distinguishes itself by remaining visually agnostic, offering a collection of logic-heavy components without predefined styles. It supports advanced organization through hierarchical menu navigation, nested paging systems, and conditional group filtering that hides categories when no child items match
This project is a jQuery content slider used to create responsive image galleries and touch-enabled carousels. It functions as an accessible UI component that displays images, video, or HTML content using hardware-accelerated animations. The slider includes built-in support for swipe gestures and finger-following navigation for touch-enabled devices. It integrates ARIA attributes, such as Aria Live and Aria Hidden, to ensure screen reader compatibility and accessibility for users of assistive technologies. The system provides comprehensive layout and navigation capabilities, including config
Reach UI is an open-source library of accessible, low-level React components designed to serve as a foundation for building design systems and interactive user interfaces. It is an accessibility-first toolkit that handles core concerns like ARIA attributes, focus management, and screen reader support automatically, without requiring developer configuration. The library is built as a collection of standalone packages, each managing its own lifecycle and dependencies, enabling granular adoption and tree-shaking. Components use a polymorphic rendering pattern, accepting an as prop to render as
typeahead.js is a JavaScript autocomplete library used to build searchable input fields that provide real-time suggestions from local or remote data sources. It functions as a client-side suggestion engine and an asynchronous search interface, providing a customizable UI toolkit for managing search suggestion menus. The library focuses on data aggregation and performance, allowing the combination of multiple local or remote datasets into a single interface grouped by category. It utilizes rate-limited asynchronous fetching to prevent API overloading and employs search data prefetching and loc
Nuxt UI is a comprehensive Vue component library built for the Nuxt ecosystem, providing over 125 production-ready, WAI-ARIA compliant components for building modern web applications. The library offers a complete design system with Tailwind CSS theming, supporting dark mode, custom color palettes, semantic color aliases, and runtime theme switching through CSS design tokens. It includes built-in internationalization for over 50 languages, server-side rendering compatibility, and a Figma kit that mirrors the code components for design-to-development consistency. The library distinguishes itse
Melt UI is a headless UI library for Svelte that provides a collection of unstyled, accessible component builders. It functions as an accessible component framework and state management tool, offering the logic and state required to build interface elements that follow WAI-ARIA standards and support keyboard navigation without imposing specific visual styles. The library features a floating element positioning engine that manages the placement of popovers, tooltips, and menus relative to trigger elements. This system utilizes portals to prevent layout clipping and incorporates automatic overf
Coss is an accessible UI component library and design system framework used to build web interfaces. It provides a comprehensive kit of interactive elements and layout building blocks that follow screen reader and keyboard navigation standards. The project functions as a UI overlay management library, offering specialized tools for implementing anchored popovers, tooltips, and slide-out panels with smooth transitions. It includes a set of accessible form primitives and selection controls to ensure compatibility across different assistive technologies. Its broader capabilities cover the const
Polaris React is a production-ready component library that implements Shopify's Polaris design system for building consistent merchant-facing admin interfaces. It provides a comprehensive set of reusable React components, including accessible form inputs, data display elements, layout and navigation structures, and visual feedback indicators, all styled through a semantic color token system applied via CSS custom properties for dynamic light and dark mode support. The library distinguishes itself with an icon-first visual language featuring over 400 commerce-specific SVG icons delivered as fi
Bootstrap Select is a jQuery plugin that replaces standard HTML select elements with a stylized interface. It functions as a custom dropdown menu that transforms native browser inputs into accessible form components. The project differentiates itself by providing real-time search filtering, multi-select data entry, and the ability to populate selection lists dynamically via remote JSON sources. To maintain browser performance when handling large datasets, it utilizes virtual rendering to display only the visible subset of options. The component includes accessibility support through ARIA att
Awesomplete is a lightweight JavaScript library for adding searchable suggestion lists to text fields. It functions as an HTML-based autocomplete widget that renders filtered results from arrays, HTML elements, or comma-separated strings with zero external dependencies. The library includes a customizable suggestion engine that allows for the definition of custom matching logic, sorting rules, and trigger thresholds. It is designed as an event-driven UI component, providing a programmable interface to intercept selection events and manage the state of the suggestion popup. The system support
Primitives is a library of unstyled, accessible building blocks designed for creating complex interface elements in React. It functions as a headless component framework, providing the underlying logic, state management, and accessibility compliance while leaving all visual styling and design decisions entirely to the developer. The library distinguishes itself through a composition-based architecture that allows developers to build interactive interfaces by nesting small, single-purpose components. This system automatically handles complex requirements such as WAI-ARIA attribute injection, f
autoComplete.js is a vanilla JavaScript library used to add searchable suggestion dropdowns to input elements. It functions as a client-side search engine and input lifecycle manager that operates without external dependencies or frameworks. The library features a customizable search engine with multiple matching modes and diacritics support for accurate data filtering. It includes a request debouncing utility to limit the frequency of network requests by delaying search execution during active typing. The system provides DOM-based suggestion rendering for real-time value discovery and an ev
shadcn-vue is a collection of accessible and unstyled UI components for Vue. It serves as a design system foundation and a port of Radix UI primitives to the Vue ecosystem, focusing on providing a base for highly customizable web interfaces. The project utilizes a template-driven distribution model, delivering raw source code via a CLI rather than a compiled library. This allows for the direct modification of components using Tailwind CSS utility classes to establish a unique visual identity. The library covers accessible component architecture and custom design system implementation. It pro
hint.css is a pure CSS tooltip library and styling framework used to create accessible informational pop-ups. It functions as a lightweight user interface component that transforms ARIA attributes into visible tooltips without the use of JavaScript. The framework is designed to be customizable, offering a system of configurable class prefixes to prevent naming conflicts within larger web projects. It utilizes a BEM-inspired namespace to ensure stylesheets remain conflict-free when integrated into existing environments. The library covers a range of UI capabilities, including directional posi
This project is a jQuery plugin and client-side form validator used to verify web form inputs before they are submitted to a server. It employs a rule-based validation engine to check user input against predefined or custom rules to ensure data integrity in the browser. The tool is designed as an ARIA-compliant validation system, using accessibility attributes to link error messages to input fields. This ensures that screen reader users are notified when a field contains an invalid value during the form submission process. The system supports remote server validation via asynchronous HTTP re
The United States Web Design System is a government design system and accessible UI framework. It provides a collection of standardized CSS and JavaScript components, along with a CSS component library, specifically designed for building consistent federal government websites. The system allows for custom CSS theme development through the use of design tokens for colors, spacing, and typography. Users can customize visual themes and compile custom styles to maintain a unified brand identity across multiple web properties. The framework covers responsive interface design and web accessibility
Tiny-slider is a vanilla JavaScript carousel library used to create touch-enabled content sliders and accessible UI components without external dependencies. It functions as a responsive layout engine that adjusts slide visibility and dimensions based on viewport breakpoints. The library distinguishes itself through built-in lazy loading for images and media to improve page performance and a responsive system that automatically scales item counts and spacing according to the device screen size. It also supports nested slider instances, allowing for the creation of multi-directional scrolling
MUI X is a collection of advanced React UI components for building data-rich applications, including a data grid, charting library, date and time pickers, scheduler, and tree view. The library is built with accessibility as a core principle, ensuring all components meet WCAG and WAI-ARIA standards for keyboard navigation and screen reader announcements. The components are designed for extensibility and performance. The data grid offers comprehensive data management with sorting, filtering, pagination, column pinning, row grouping, inline editing, and Excel export. The charting library support
Choices is a vanilla JavaScript library used to create customizable select boxes and text inputs without external dependencies. It functions as a custom select box plugin that transforms standard HTML select elements into searchable, stylable dropdowns and tagged text input components. The library distinguishes itself through a system of customizable HTML templates and CSS custom properties, allowing for the creation of tailored UI components. It provides the ability to define custom HTML structures for input components and modify the visual appearance of the interface via CSS theme styling.
shadcn-svelte is a collection of accessible and customizable user interface elements for Svelte applications. Rather than being distributed as a traditional dependency, these components are provided as source code that is copied directly into the project codebase. The library utilizes a registry-based distribution system, allowing users to install specific UI blocks and components via a command-line interface. This system uses JSON metadata to define dependencies and file paths, while a bootstrapping process automates the configuration of styles and CSS variables. The project integrates Tail
gluestack-ui is a cross-platform React component library built with Tailwind CSS. It provides over 30 pre-built, accessible components that can be installed by copying their source files directly into a project, giving developers full control over customization without external runtime dependencies. Every component implements WAI-ARIA patterns, keyboard navigation, and screen reader support out of the box. A key differentiator is the copy-paste architecture: rather than a traditional package dependency, component source code is placed in the project, allowing direct editing and eliminating ve