Combobox
Checkbox Multiselect
Multiple choice as a list rather than chips: what you picked stays in place, and the list does not close after every tick.
React + Tailwind, shadcn-compatible: press “Copy for AI” and your Cursor or Claude Code agent installs it with the shadcn CLI.
What you can change
- the options array and the initial defaultValue
- the label, placeholder, emptyLabel and clearLabel captions
- the counter wording via countText with {count} and {total}
A link for your AI agent: preview, code and instructions.
Preview

Use it with AI
- 1. Copy the link.
- 2. Write to your agent in your own words and drop the link into the sentence.
- 3. The agent opens the link and installs the component from the registry.
put this on the home page as the hero:
https://vibeui.club/c/autocomplete-014?lang=en&theme=dark
Not sure where to paste it? Step-by-step guide
Show the full instructions
What the link says, spelled out. Use it when your agent cannot open links — paste this text instead.
Loading…
How to use
<Autocomplete014 label="Skills" options={skills} onChange={setSkills} />A sample call. The agent installs the component itself from the registry via the “Copy for AI” link.
Settings
- Label
label· default: Skills- Placeholder
placeholder· default: Search skills- Reset button
clearLabel· default: Reset- Accent
accent· default: theme colour- Background
background· default: theme colour
More in Combobox
FAQ
- How do I add Checkbox Multiselect with Cursor or Claude Code?
- Press “Copy for AI” on this page and paste it into your agent's chat. The instruction contains the shadcn CLI install command, the dependencies and what to keep, so the agent installs this exact component instead of recreating a lookalike.
- What does Checkbox Multiselect depend on?
- No npm packages beyond React and Tailwind CSS.
- What can I change in Checkbox Multiselect?
- Adapt: the options array and the initial defaultValue; the label, placeholder, emptyLabel and clearLabel captions; the counter wording via countText with {count} and {total}. Keep as installed: a list that does not close after every tick: closing is the classic curse of multiselect; the order of the options: picks do not float to the top, or the eye loses its place after every click; a real input[type=checkbox] instead of a div with a role: state and keyboard come from the browser.
- Is Checkbox Multiselect free?
- Yes. The preview is open without an account; with a free account you can copy up to 20 components a month.
For developers
npx shadcn@latest add https://vibeui.club/r/pro/autocomplete-014.jsonThis command needs a signed link: sign in and open “Component source” below — it issues a working link valid for 30 minutes. All install options
Technical notes
The component is self-contained: one file, no dependencies, its own palette in the local --vibeui-autocomplete-014-* variables. The selection is kept as an array of strings and the list order never changes — picks do not float to the top, so the eye does not lose its place. A row is a real label with an input[type=checkbox]: keyboard, state and the screen-reader announcement come from the browser rather than being imitated with roles. The whole row is the target rather than the tick itself: a 15px box is next to impossible to hit with a finger. The cursor is driven by the arrows and toggled by Enter — space is taken by typing in the search field. The selection counter is marked role="status", so the change is read aloud. The footer layout is computed from the panel's own width through a container query. The theme comes from color-scheme through light-dark(), and the component switches on a class-based dark theme for itself.
Tags
- autocomplete
- multiselect
- checkbox
- filter
Component source
The same file your agent installs. Here in case you would rather copy it by hand.
Loading…