Truly headlessA pure TypeScript state machine with zero DOM and zero framework dependencies. Behavior is written once; adapters only render state.
One core, three adaptersThe same @selkit/core powers @selkit/dom, @selkit/vue and @selkit/react with a unified API. Learn it once, use it anywhere.
No jQuery, zero runtime depsA drop-in alternative to select2 and Tom Select without the jQuery baggage. The default positioner ships in-core.
Batteries includedSearch (substring, diacritics-insensitive, fuzzy), multiple select, tagging, async loading with pagination, virtual scrolling, forms and RTL.
Accessible by defaultARIA combobox/listbox roles, active-descendant management and full keyboard navigation come from the core.
ThemeableA neutral base theme plus a scoped Bootstrap 5 theme, both driven by CSS custom properties. Restyle with a few variables.