@keenmate/web-multiselect

A lightweight, framework-agnostic multiselect web component — typeahead search, tree data, virtual scrolling, add-new creation, an imperative API, and extensive CSS-variable theming.

🎯
Framework Agnostic

A pure Web Component — works with vanilla JS, React, Vue, Angular, Svelte and more.

🔄
Flexible Data & API v2.0

Member properties or callbacks for any shape, plus an imperative open/search/scroll-to API.

🌳
Tree Mode v2.0

Materialized-path hierarchies with cascade checkboxes, ancestor-preserving search and breadcrumb badges.

Add-new Creation v2.0

Let users create options on the fly with an async, cancelable addNewCallback.

Virtual Scrolling

Render 15,000+ options smoothly, with a scroll-to API that jumps to any row instantly.

🎨
Deep Theming

Scale with --ms-rem, reskin glyphs via the base-icon contract, and theme every part with CSS variables.

Example usage

Basic usage
 
Form + async search + add-new
 

🌳

Tree mode

Virtual scrolling

📱

Responsive & RTL

⌨️

Keyboard first