ui-multi-select

Implements a React MultiSelect component with tags, search filtering, and React Hook Form integration.

Updated Aug 18, 2026
One-click install
npx skills add https://github.com/Aurelian1974/ERPEnterprise --skill ui-multi-select-aurelian1974
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ui-multi-select
Source: https://github.com/Aurelian1974/ERPEnterprise/tree/main/.github/skills/ui-multi-select
Command: npx skills add https://github.com/Aurelian1974/ERPEnterprise --skill ui-multi-select-aurelian1974

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building a multi-select input with tags, search filtering, and form integration from scratch is repetitive and error-prone. This Skill provides a complete, ready-to-use MultiSelect component for ERP applications based on shadcn/ui Command and Popover primitives. ## Core Features & Use Cases - Tag-based multi-selection: Displays selected values as removable Badge chips with a configurable maxDisplay limit and a "+N more" overflow indicator. - Client-side search filtering: Built-in CommandInput filters options by label, suitable for lists under 200 options, with a footer showing selection count and a clear-all action. - React Hook Form integration: Works directly with FormField and Zod schemas, and supports colored badges for status-style options. - Use Case: Assign multiple roles to a user in an ERP admin panel, or filter a data table by multiple colored statuses in a FilterBar. ## Quick Start Ask the AI to add a MultiSelect field for role selection to your React Hook Form using the shadcn/ui Command and Popover components.

Frequently Asked Questions about ui-multi-select

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a multi-select dropdown with tags in React?▼

Combine shadcn/ui Popover and Command components to render a dropdown with checkboxes, and display selected values as removable Badge chips inside the trigger button. Control state with a string array of values and an onChange callback.

How to integrate a multi-select component with React Hook Form?▼

Wrap the MultiSelect inside a FormField render prop, passing field.value as the value and field.onChange as the change handler. Validate the array with a Zod schema such as z.array(z.string()).min(1) to require at least one selection.

Does shadcn/ui have a built-in multi-select component?▼

No, shadcn/ui does not ship a MultiSelect out of the box. You compose one from the Command, Popover, and Badge primitives, which this component does with search filtering, tag removal, and a selection count footer.

When should I use client-side filtering vs server-side search in a select?▼

Client-side filtering with CommandInput works well for lists under about 200 options. For larger datasets, use a server-side search approach such as a SearchableSelect component that queries options asynchronously.

How do I show colored badges for status options in a multi-select?▼

Add an optional color property to each option object and apply it to the Badge via inline styles for background, text, and border colors. This is useful for visually distinguishing statuses like Draft, Approved, or Rejected.