cmdk is an unstyled, headless React component library for building accessible search-based navigation and command interfaces. It provides the logic and state management required to create keyboard-navigable command palettes that filter lists of actions and items based on user input.
The library distinguishes itself by remaining visually agnostic, offering a collection of logic-heavy components without predefined styles. It supports advanced organization through hierarchical menu navigation, nested paging systems, and conditional group filtering that hides categories when no child items match a search query.
The framework covers a broad range of functional areas, including asynchronous data handling for external search sources and customizable ranking logic to determine result priority. It also manages the UI state for overlay displays and renders specific status states for loading or empty result sets.
The components are designed to follow keyboard and screen reader standards for accessible menu rendering.