React Native Scroll Bottom Sheet screenshot

React Native Scroll Bottom Sheet

Author Avatar Theme by Rgommezz
Updated: 24 Jan 2023
1547 Stars

Cross platform scrollable bottom sheet with virtualisation support, native animations at 60 FPS and fully implemented in JS land :fire:

Categories

Overview:

The Scroll Bottom Sheet is a cross-platform library compatible with iOS, Android, and web platforms. It offers virtualization support and native animations while integrating seamlessly with core scrollable components in React Native. The library is fully compatible with Expo and offers a performant solution that runs smoothly even on low-grade Android devices.

Features:

  • Virtualisation support: Fully integrates with FlatList, ScrollView, and SectionList components.
  • Performant: Runs at 60 FPS, even on low-end Android devices.
  • Horizontal mode: Ideal for implementing Google or Apple Maps bottom sheet types with several embedded horizontal lists.
  • Minimalistic: Exposes fundamental props for easy behavior control, supporting Timing and Spring animations.
  • Support for interruptions: Smoothly interrupt animations without sudden jumps.
  • Imperative snapping: Allows for closing the bottom sheet by pressing an external touchable.
  • Animate all elements: Enables animating other screen elements based on the bottom sheet position.
  • No native dependencies: Implemented entirely in JavaScript using Gesture Handler and Reanimated libraries.
  • Expo compatible: Fully compatible with Expo, no need for ejection.
  • TS definitions: Provides TypeScript definitions for easier project initialization.

Installation:

To install the Scroll Bottom Sheet library, use npm or yarn. If not using Expo, also install react-native-gesture-handler and react-native-reanimated libraries along with this package. Ensure Gesture Handler version is 1.6.0 or higher and Reanimated version is 1.7.0 or newer to avoid unexpected errors. The library is compatible with Reanimated 2.x starting from react-native-reanimated version 2.0.0-alpha.4.

Summary:

The Scroll Bottom Sheet library offers a feature-rich solution for implementing a scrollable bottom sheet with virtualization support and fully native animations. It is highly performant, easy to use, and integrates seamlessly with core scrollable components in React Native. Compatible with Expo, it provides a minimalistic approach to controlling behavior and animations, making it a versatile choice for developers.