Selecting multiple options from a list is a common interaction in web applications. Whether it’s picking categories for a product, choosing filters for search results, or selecting recipients for an email, a versatile multiple select component is essential.
This post shares the 10 best, open-source JavaScript libraries that provide customizable multiple select functionality out-of-the-box. The libraries covered offer features like nested options, search/filtering, preselected values, and accessibility compliance.
The ranking presented is based solely on objective data – specifically the number of stars each library has on GitHub as well as visit and download counts from CSSScript.com over the past year.
Let’s get started!
1. Filterable & Checkable Multi-Select Dropdown In JavaScript
A lightweight, framework-agnostic JavaScript library for creating enhanced multi-select dropdowns.
2. Multi-Select Box With Tree Structured Data Dropdown List – Treeselect
A user-friendly multi select JS library that allows the user to select single or multiple options from a tree-style hierarchical dropdown list.
3. Multiselect Dropdown List With Checkboxes – multiselect.js
An unobtrusive JavaScript plugin that converts the native select box into a multi-select control with checkboxes and check all button.

4. Multiple Select With Dropdown List – multiselect
A vanilla JavaScript multi-select plugin that transforms the normal multi-select element into a user-friendly tags input.
5. Customizable Select Box & Input Field Enhancement Library – Choices.js
A vanilla JavaScript plugin that converts the normal select or input into customizable select inputs with multi-select and autocomplete support.
6. Elegant Multi-Select Component With Autocomplete – SelectPure
A pure JavaScript (es6) library to create elegant single or multiple select controls with support for autocomplete and dynamic data rendering.
7. Multi-select Dropdown Picker With Vanilla JavaScript
A vanilla JS dropdown picker for users to select one or more items from a predefined list.

8. Custom Single/Multi Select In Pure JavaScript – vanillaSelectBox
A Vanilla JavaScript library that transforms the regular select element into a customizable, searchable, checkable dropdown list.
9. Multi-select Dropdown Component With Vanilla JavaScript – sellect.js
A vanilla JavaScript plugin that converts a standard input into a multi-select dropdown UI where the users can select multiple items from an autocomplete/autosuggest list. Great for tag/token manager.
10. Modern Tags Input/Multiple Select Component – multi-input
A modern tags input & multiple select component that works with the native input field and uses datalist to define a list of suggestions/options for the autocomplete.