thehardwarestore.ai

where AI agents shop for the right tools

── 99265 repos indexed ── | filtered by tag: dropdown
floating-ui/floating-ui ★ 32760 1714 APPLICATION

The Floating UI repository is a comprehensive library for creating accessible and customizable floating UI components, such as tooltips, popovers, and dropdowns. It offers a set of low-level features to help navigate the challenges of building accessible floating UI components. The library is built with a focus on accessibility, modularity, and flexibility, and is suitable for use in a variety of applications.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 2 reusable components found
ng-bootstrap/ng-bootstrap ★ 8223 1551 APPLICATION

ng-bootstrap is a mature, widely-used Angular component library that provides native Angular directives and components wrapping Bootstrap 5 CSS. It is a pure library (not an application), though it includes demo and test applications for development. The architecture is modular and highly configurable: each UI widget (accordion, datepicker, modal, tooltip, popover, typeahead, etc.) is a standalone component with injectable configuration services, abstract adapters for custom data models (e.g., date/time), and rich accessibility support (ARIA, keyboard navigation, focus traps). It leverages `@popperjs/core` for positioning and provides reusable utilities for auto-close behavior, CSS transitions, focus management, and live announcements. The codebase is well-organized, follows Angular style guides, includes extensive unit and end-to-end tests, and is actively maintained with regular releases aligning with the latest Angular and Bootstrap versions. Technical drift is low as dependencies are current.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
wenzhixin/multiple-select ★ 1910 650 APPLICATION

Multiple Select is a mature jQuery plugin that transforms native HTML `<select>` elements into feature-rich dropdowns with checkboxes, supporting single and multiple selection, optgroups, filtering, virtual scrolling for large datasets, localization, and full keyboard accessibility. The library is architecturally structured as a monolith jQuery-fn extension with a core class (`MultipleSelect.js`), separate utilities (`utils/index.js`), constants, virtual scroll implementation, and a Bootstrap 5 theme. It also provides Vue 2/3 wrappers (`src/vue/`) and is distributed as UMD modules via npm and CDN. The codebase demonstrates solid engineering practices: ES6+ modules, Rollup/Vite build system, comprehensive linting (ESLint, Stylelint, cspell), and a configurable options/events/methods API. While tightly coupled to jQuery, the utility functions and virtual scroll component are potentially reusable standalone. The plugin is actively maintained with recent releases and a responsive issue tracker.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
select2/select2 ★ 25905 6129 APPLICATION

Select2 is a mature, widely-used JavaScript library that enhances native HTML select elements by providing a customizable dropdown with search, tagging, remote data loading (AJAX), infinite scrolling, and extensive internationalization (i18n). It operates as a jQuery plugin, replacing the standard `<select>` with a rich UI component while synchronizing state with the original DOM element. The library is structured modularly using AMD/UMD modules (built with RequireJS), exposing a core class (`Select2`) that coordinates data, selection, dropdown, and results adapters. It employs a decorator pattern (`Utils.Decorate`) to mix in optional behaviors like placeholders, clear buttons, and infinite scroll without deep inheritance chains, and uses an observable pattern for event handling. In production, Select2 transforms a `<select>` element into an interactive widget: it reads options from the DOM (or fetches them via AJAX), renders a searchable dropdown, manages user selections (single or multiple), and provides programmatic control through methods like `val`, `data`, `open`, and `close`. The architecture is plugin-friendly: every major component (data adapter, selection adapter, dropdown, results) can be replaced or extended, enabling custom themes, data sources, and interaction patterns. Key strengths include a well-tested codebase (QUnit tests across jQuery 1.x–4.x), a comprehensive i18n system with fallback chains, and a built-in diacritics normalization table for accent-insensitive search. However, the library is tightly coupled to jQuery and relies on older build tools (Grunt, JSHint, RequireJS), which constitutes medium technical drift. Despite this, it remains actively maintained with recent releases, CI pipelines, and community contributions.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
dowjones/react-dropdown-tree-select ★ 490 267 APPLICATION

react-dropdown-tree-select is a React component library that provides a dropdown interface for selecting items from hierarchical tree data. The component supports multiple selection modes (multi-select, simple select, radio select, and hierarchical), displays selected items as tags/pills, includes search functionality with progressive filtering and debouncing, offers keyboard navigation, and implements accessibility features through ARIA attributes. The architecture centers around a DropdownTreeSelect component that uses a TreeManager to handle tree state and operations, with supporting components for rendering trees, nodes, tags, and controls. Performance optimizations include virtualized rendering via react-infinite-scroll-component, search debouncing, and progressive filtering that reduces search scope with each keystroke.

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