Awesome Open Source
Awesome Open Source
React Native Select Pro

React Native dropdown (select) component developed by Mobile Reality

Version GitHub stars npm total downloads npm week downloads Last master branch commit License


  • Customizable
  • Searchable
  • Animations
  • Multi select
  • Android / iOS / Expo support
  • TypeScript support
  • Based on react-native-portal


Expo Snack

Example on Expo

Video preview


Clone this repo and next:

cd example
yarn install
yarn android #run example app for Android
yarn ios #run example app for iOS


Getting Started


npm install @mobile-reality/react-native-select-pro


yarn add @mobile-reality/react-native-select-pro


Firstly, wrap your app code in SelectProvider

import React from 'react';
import { SelectProvider } from '@mobile-reality/react-native-select-pro';

const RootComponent = () => {
  return (
      {/* rest of your app code */}

Then you can use Select component

import React from 'react';
import { View } from 'react-native';
import { Select } from '@mobile-reality/react-native-select-pro';

const SomeComponent = () => {
  return (
      <Select {/* One required prop: `options` */}
        options={[{ value: 'somevalue', label: 'somelabel' }]} 

If you want to use Select component inside:

  • Modal from react-native / react-native-modal
  • BottomSheet from react-native-bottom-sheet

you need to wrap code inside Modal / BottomSheet in SelectModalProvider

import React from 'react';
import { View, Modal, Text } from 'react-native';
import { Select, SelectModalProvider } from '@mobile-reality/react-native-select-pro';

const SomeComponent = () => {
  return (
      <Modal> {/* e.g. `Modal` from `react-native` */}
        <SelectModalProvider> {/* `SelectModalProvider` wrapping code inside `Modal` */}
            options={[{ value: 'somevalue', label: 'somelabel' }]}



See the contributing guide to learn how to contribute to the repository and the development workflow.



Alternatives To React Native Select Pro
Select To Compare

Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Typescript (238,684
Reactjs (160,752
Menu (13,225
Picker (5,441
Dropdown (2,651
React Native Component (227