List Box

A listbox displays a list of options and allows a user to select one or more of them.

Next.js
Remix
Astro
Gatsby
<ListBox aria-label="Framework">
  <ListBoxItem>Next.js</ListBoxItem>
  <ListBoxItem>Remix</ListBoxItem>
  <ListBoxItem>Astro</ListBoxItem>
  <ListBoxItem>Gatsby</ListBoxItem>
</ListBox>

Installation

npx shadcn@latest add @dotui/list-box

Usage

Use list boxes to display a list of options and allow users to select one or more of them.

import { ListBox, ListBoxItem } from "@/components/ui/list-box";
<ListBox aria-label="Options" selectionMode="single">
  <ListBoxItem>Option 1</ListBoxItem>
  <ListBoxItem>Option 2</ListBoxItem>
  <ListBoxItem>Option 3</ListBoxItem>
</ListBox>

Playground

Use the controls below to experiment with different list box props and see the live preview and code update.

Option 1
Option 2
Option 3
Option 4
selectionMode
orientation
<ListBox
  aria-label="Options"
  selectionMode="single"
  orientation="vertical"
>
  <ListBoxItem id="1">Option 1</ListBoxItem>
  <ListBoxItem id="2">Option 2</ListBoxItem>
  <ListBoxItem id="3">Option 3</ListBoxItem>
  <ListBoxItem id="4">Option 4</ListBoxItem>
</ListBox>

API Reference

ListBox

A listbox displays a list of options and allows a user to select one or more of them.

PropType
boolean
DragAndDropHooks<NoInfer<T>>
"grid" | "stack"
Orientation
ReactNode | function
Iterable<T>
ReactNode | function
readonly any[]
SelectionMode
SelectionBehavior
Iterable<Key> | "all"
Iterable<Key> | "all"
function
Iterable<Key>
boolean
boolean
boolean
boolean
"none" | "clearSelection"

ListBoxItem

A ListBoxItem represents an individual option in a ListBox.

PropType
union
Key
T
string
boolean
ReactNode | function

Last updated on 1/13/2026

Built with passion by @mehdibha.