Skip to content

React Select

A customisable dropdown select component for React apps.

Stars
28k
Forks
4.1k
Licence
MIT
Language
TypeScript
Last update
4 months ago
Type
Library

What it is

React Select is a component library for React that provides a select control, the dropdown where users pick one or more options from a list. It works out of the box and can be customised in its styling, data handling, and UI parts. Developers add it to their app when they need a richer select than a plain HTML select, such as searching, multiple choices, or option groups.

  • Build a dropdown that lets users pick a flavour from a list of options
  • Allow users to select several values with the isMulti prop
  • Let users search through a long list of options with isSearchable
  • Control the selected value and menu state from your own component state

Great for

  • React developers who need a searchable or multi-select dropdown
  • Teams building forms that need controlled or uncontrolled select state
  • Projects that want to customise select styling with emotion
  • Developers who need async or creatable options, which the docs cover

Not ideal for

  • Projects not using React, since the component is built for React.js
  • Developers needing an older React Select v1 or v2 setup without checking the upgrade guides, since v5 is a TypeScript rewrite
  • Users who only need a simple native HTML select with no extra features
Step-by-step guide: how to use React SelectInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js · React

    Install from npm with yarn

    yarn add react-select
  2. 2

    Run it

    • Install the package with yarn add react-select
    • Import Select from 'react-select' in your component
    • Pass an options array of { value, label } objects to the component
    • Render the component and check the dropdown opens with the listed options
  3. 3

    Get the most out of it

    • Use the controllable props like value and onChange to manage state yourself
    • Customise appearance with the styles API documented at react-select.com/styles
    • Use the built-in animated components documented on the home page
    • Use the creatable and async guides for adding new options or loading options remotely

Downloads

Strengths

  • Works out of the box with a small set of common props
  • Styling and components can be customised through documented APIs
  • Backed by Thinkmill and Atlassian with a large community and 28k+ stars

Trade-offs

  • Customisation depends on understanding its props and component injection API, which takes time to learn
  • The README is brief and points to the external docs site for most detail
  • Major version upgrades have required migration guides

How it compares

ProjectStarsTypeLevelUpdatedBest for
react-select (this)28kLibrarybeginner4 months agoReact developers who need a searchable or multi-select dropdown
downshift12.3kLibraryintermediate4 months agoReact developers building a custom autocomplete or search-as-you-type input

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.