Skip to content
RivetUI

Multi Select

Lets a user choose multiple values from a compact, keyboard-accessible list.

@rivetui/multi-select

Preview

Explore each composition interactively, then open its code in the same context.

Default

Choose several values from a compact list without adding a search field.

Note
The popup stays open while values are toggled. Press Escape or move focus away when the selection is complete.

Registry

Installation

Add the component source and its declared dependencies with the shadcn CLI.

Install component
bunx --bun shadcn@latest add @rivetui/multi-select
Inspect registry item

Public interface

API reference

Component-specific props are listed here. Native element and Base UI props continue to pass through.

MultiSelect

PropTypeDefault
valueValue[]—
defaultValueValue[][]
onValueChange(value: Value[], details) => void—
itemsreadonly Item[] | Record<string, ReactNode>—
openboolean—
defaultOpenbooleanfalse
onOpenChange(open: boolean, details) => void—
namestring—
requiredbooleanfalse
disabledbooleanfalse

MultiSelectValue

PropTypeDefault
placeholderReactNode—
childrenReactNode | ((value: Value[]) => ReactNode)resolved item labels

MultiSelectContent

PropTypeDefault
alignItemWithTriggerbooleantrue

MultiSelectItem

PropTypeDefault
valueValuenull
disabledbooleanfalse
labelstringitem text
Rivet UI / Multi SelectComponents engineered, not decorated.