bottoms
v2.4.0
Published
A wrapper performant interactive bottom sheet with fully configurable options and simple to use🚀
Downloads
33
Maintainers
Readme
Bottoms - React Native Module
A versatile and interactive React Native module for creating performant bottom sheets with customizable options 🚀
Features
- Modal presentation view and bottom sheet modal.
- Smooth gesture interactions with snapping animations.
- Seamless keyboard handling for iOS and Android.
- Support for pull-to-refresh in scrollable views.
- Compatible with FlatList, SectionList, ScrollView, and View scrolling interactions.
- Integration with React Navigation for enhanced navigation support.
- Works with Reanimated v1 and v2.
- Compatible with Expo.
- Accessibility support.
- Written in TypeScript for type safety.
Installation
To install "bottoms," use the following command:
1
npm install bottoms
or
yarn add bottoms
2
Please make sure to install the following dependencies in your project:
npm install react-native-reanimated react-native-gesture-handler @gorhom/bottom-sheet zustand
or if you're using Expo:
npx expo install react-native-reanimated react-native-gesture-handler @gorhom/bottom-sheet zustand
Note: React Native Gesture Handler and Reanimated may require additional configuration steps, so follow their installation instructions for compatibility.
Usage
- Import the "bottoms" module in your React Native project.
- Use the provided hooks or methods to create and customize bottom sheets in your app.
- Wrap your entire app with this provider and pass the Layout component to it.
- Call 'bottom' to perform functions such as bottom.open('sheet')
For detailed usage examples and API documentation, refer to the documentation.
Support and Contributions
If you find this module helpful, consider supporting its maintenance by sponsoring it on GitHub. For personalized support or customizations, feel free to reach out to us on X @ahmad_alshbeeb.
License
This project is licensed under the MIT License.
Built with ❤️ by Ahmad Alshbeeb (x.com/ahmad_aslhbeeb)