A customizable drawer component for React Native with smooth bouncy animations.
react-native-bouncy-drawer is a React Native component that implements a drawer with customizable bouncy animations. It solves the need for engaging, physics-based navigation drawers in mobile apps by providing smooth open/close transitions with extensive control over animation parameters.
React Native developers building mobile applications who want animated navigation drawers with customizable physics and styling.
Developers choose this library for its fine-grained control over animation physics (friction, tension, bounciness) and comprehensive styling options, offering a more engaging alternative to standard React Native drawer implementations.
Bouncy drawer for React Native
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Offers direct access to physics parameters like friction, tension, and bounciness for both open and close animations, enabling unique motion effects as shown in the props table.
Provides multiple style props for headers, buttons, and colors in opened/closed states, allowing full visual customization to match app branding, as detailed in the available props.
Includes callbacks like willOpen and didClose for precise control over side effects during animations, demonstrated in the example code with console logs.
Automatically sets header heights for iOS (60) and Android (50), reducing manual adjustments across platforms, as noted in the headerHeight prop description.
The README only provides a basic example and props table, lacking advanced tutorials, performance guides, or troubleshooting for complex integrations.
Unlike libraries like React Navigation's drawer, it's a standalone component requiring manual state management for routing, which adds complexity for navigation-heavy apps.
Physics-based animations can be more resource-intensive than simple transitions, possibly causing jank on older devices, though not explicitly warned in the README.