gorhom/react-native-bottom-sheet

A performant interactive bottom sheet with fully configurable options 🚀

TypeScript

9,106

597 commits

updated May 9, 2026

See the code

README

React Native Bottom Sheet

Reanimated v3 version Reanimated v2 version Reanimated v1 version
license npm runs with expo
NPM Downloads

A performant interactive bottom sheet with fully configurable options 🚀

React Native Bottom Sheet


Features

  • ⭐️ Support React Native Web, read more.
  • ⭐️ Dynamic Sizing, read more.
  • ⭐️ Support FlashList, read more.
  • Modal presentation view, Bottom Sheet Modal.
  • Smooth gesture interactions & snapping animations.
  • Seamless keyboard handling for iOS & Android.
  • Support pull to refresh for scrollables.
  • Support FlatList, SectionList, ScrollView & View scrolling interactions, read more.
  • Support React Navigation Integration, read more.
  • Compatible with Reanimated v1-3.
  • Compatible with Expo.
  • Accessibility support.
  • Written in TypeScript.
  • Read more.

Getting Started

Check out the documentation website.

Versioning

This library been written in 3 versions of Reanimated, and kept all implementation in separate branches:

  • v5 | branch | changelog : written with Reanimated v3 & Gesture Handler v2.

  • v4 (not maintained) | branch | changelog : written with Reanimated v2.

  • v2 (not maintained) | branch | changelog : written with Reanimated v1 & compatible with Reanimated v2.

I highly recommend to use v5 which provides more stability with all latest features.

Author

To keep this library maintained and up-to-date please consider sponsoring it on GitHub. Or if you are looking for a private support or help in customizing the experience, then reach out to me on Twitter @gorhom.

License

MIT


Mo Gorhom Mo Gorhom

bottom-sheet
bottomsheet
modal
react-native
reanimated
sheet

gorhom/react-native-bottom-sheet

A performant interactive bottom sheet with fully configurable options 🚀

TypeScript

9,106

597 commits

updated May 9, 2026

See the code

README

React Native Bottom Sheet

Reanimated v3 version Reanimated v2 version Reanimated v1 version
license npm runs with expo
NPM Downloads

A performant interactive bottom sheet with fully configurable options 🚀

React Native Bottom Sheet


Features

  • ⭐️ Support React Native Web, read more.
  • ⭐️ Dynamic Sizing, read more.
  • ⭐️ Support FlashList, read more.
  • Modal presentation view, Bottom Sheet Modal.
  • Smooth gesture interactions & snapping animations.
  • Seamless keyboard handling for iOS & Android.
  • Support pull to refresh for scrollables.
  • Support FlatList, SectionList, ScrollView & View scrolling interactions, read more.
  • Support React Navigation Integration, read more.
  • Compatible with Reanimated v1-3.
  • Compatible with Expo.
  • Accessibility support.
  • Written in TypeScript.
  • Read more.

Getting Started

Check out the documentation website.

Versioning

This library been written in 3 versions of Reanimated, and kept all implementation in separate branches:

  • v5 | branch | changelog : written with Reanimated v3 & Gesture Handler v2.

  • v4 (not maintained) | branch | changelog : written with Reanimated v2.

  • v2 (not maintained) | branch | changelog : written with Reanimated v1 & compatible with Reanimated v2.

I highly recommend to use v5 which provides more stability with all latest features.

Author

To keep this library maintained and up-to-date please consider sponsoring it on GitHub. Or if you are looking for a private support or help in customizing the experience, then reach out to me on Twitter @gorhom.

License

MIT


Mo Gorhom Mo Gorhom

bottom-sheet
bottomsheet
modal
react-native
reanimated
sheet

Project health

Overall

3.3/10

Maintained

0/10

Code review

5/10
OpenSSF Scorecard

Latest release

5.2.14 · May 9, 2026

Releases this year

8

Significant stargazers

(top 24 of 72)

Wojciech Maj

3,571 followers · starred Mar 2021

Innei

3,489 followers · starred Jan 2025

nicole mikołajczyk

159 followers · starred Sep 2024

Brent Vatne

4,534 followers · starred Dec 2020