# Vue Pick - Select, Multiselect, and Tree Select for Vue 2.7 and Vue 3 > Accessible select, multiselect and tree select for Vue 2.7 and Vue 3. Zero dependencies, one API for both versions. ## Table of Contents ### Getting Started - [Introduction](/guide/introduction.md): Vue Pick is a zero-dependency select component library for Vue 2.7 and Vue 3, with keyboard navigation, ARIA support and themeable CSS variables. - [Installation](/guide/installation.md): Install Vue Pick via npm, pnpm, or yarn. Import the stylesheet and register the component in Vue 2.7 or Vue 3 projects. - [Data Shape](/guide/data-shape.md): Use your existing data as it is. labelKey, valueKey, disabledKey, childrenKey and groupOptionsKey read any object shape without transforming it. - [Theming](/guide/theming.md): Style Vue Pick with CSS custom properties. Override colors, spacing, and typography at any scope. Full light and dark mode support. ### VPickNative - [VPickNative](/components/vpick-native.md): A styled wrapper around the native HTML select element for Vue 2.7 and Vue 3. Native mobile UX, zero JavaScript dropdown, and full form integration. - [Forms](/components/vpick-native/forms.md): Label, submit, and validate VPickNative. It renders a real native select, so name, required, and browser validation come for free. - [Accessibility](/components/vpick-native/accessibility.md): VPickNative renders a real native select, so keyboard support, screen reader behaviour, and the mobile picker are the platform's rather than reimplemented. - [VPickNative API](/components/vpick-native/api.md): Complete API reference for VPickNative. Every prop, slot, and event, with types and defaults, for Vue 2.7 and Vue 3. ### VPick - [VPick](/components/vpick.md): A fully accessible custom dropdown for Vue 2.7 and Vue 3 with keyboard navigation, group labels, slots, and ARIA support. - [Search](/components/vpick/search.md): Type-ahead filtering for VPick. Searchable input trigger, custom matching, clearing, and empty states for Vue 2.7 and Vue 3. - [Multiselect](/components/vpick/multiselect.md): Select multiple values with VPick. Removable chips, select and deselect events, keyboard removal, and value ordering for Vue 2.7 and Vue 3. - [Tree Select](/components/vpick/tree-select.md): Nested options with cascading parent and child selection for Vue 2.7 and Vue 3. Expand levels, unselectable branches, tree search, and value formats. - [Slots](/components/vpick/slots.md): Customize VPick with slots. Replace the chevron, the loading indicator, the selected label, option rows, and the empty state. - [Positioning](/components/vpick/positioning.md): Where the VPick dropdown renders and how it is anchored. Scroll containers, fixed strategy, scroll lock, detached triggers, and inline always-open mode. - [Forms](/components/vpick/forms.md): Label, submit, and validate VPick. A visually hidden native select carries the value, so name and required behave as expected. - [Accessibility](/components/vpick/accessibility.md): VPick implements the WAI-ARIA listbox pattern with full keyboard navigation, active descendant tracking, and a hidden native select for assistive technology. - [VPick API](/components/vpick/api.md): Complete API reference for VPick. Every prop, slot, event, and method, with types and defaults, for Vue 2.7 and Vue 3. ### Search engines - [Search engines](/search-engines.md): Plug any search engine into VPick. Fuzzy search, full-text search in the browser, or a server, with its ranking kept. - [Fuse.js](/search-engines/fuse.md): Fuzzy search in VPick with Fuse.js. Typo-tolerant matching across several fields, ranked closest first. - [FlexSearch](/search-engines/flexsearch.md): Full-text search in VPick with FlexSearch. Several fields, partial words and relevance ranking, all in the browser. - [Your server](/search-engines/server.md): Server-side search in VPick. Debounced requests, cancellation, and results in your server's ranking, from any backend. ### Positioning engines - [Floating UI](/positioning-engines/floating-ui.md): Position the VPick dropdown with Floating UI. Pass the library and it places, tracks and hides the dropdown like your other popovers. ### Migration - [Migrating from vue-select](/migration/vue-select.md): Move from vue-select to VPick on Vue 2.7 or Vue 3. Prop, event and slot mapping, default differences, and a prompt for your AI agent. - [Migrating from vue-treeselect](/migration/vue-treeselect.md): Move from vue-treeselect to VPick on Vue 2.7 or Vue 3. Prop, event and slot mapping, default differences, and a prompt for your AI agent.