Skip to main content
Kaleidoscope

Combobox

A searchable dropdown that allows users to filter and select from a list of options with typeahead functionality.

Default

A standard Combobox with search functionality. Users can type to filter options and select from the filtered list.

Editable example

Best practices

  1. Use Combobox when you have a large list of options (10+ items) that would benefit from search/filtering functionality.
  2. For smaller lists (4-10 items), consider using a component instead.
  3. Always provide meaningful placeholder text that indicates what users should search for.
  4. Use descriptive labels that clearly communicate the purpose of the selection.
  5. Consider using custom option rendering for complex data structures or when you need to display additional information.

Loading state

Show a loading spinner when options are being fetched asynchronously.

Editable example

Custom option rendering

Use the renderOption prop to customize how each option is displayed. This is useful for showing additional information or using custom components like tokens.

Editable example

Clear button

Add a clear button to allow users to easily reset their selection. The clear button only appears when a value is selected.

Editable example

Disabled options

Use the isOptionDisabled prop to disable specific options that shouldn't be selectable.

Editable example

Custom no options text

Override the default "No results found" message with custom text when no options match the search.

Editable example

Accessibility

  • The Combobox follows ARIA 1.2 combobox pattern for proper screen reader support
  • Keyboard navigation is supported with arrow keys, Enter, Escape, and Tab
  • The component automatically manages focus states and announcements
  • Clear button includes proper ARIA labels for screen readers
  • Loading states are announced to assistive technology
  • Disabled options are properly marked and announced