Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. React Native
  3. react-native-collapsing-toolbar

react-native-collapsing-toolbar

MITJavav1.0.0-beta.9

A React Native wrapper for Android's CollapsingToolbarLayout with built-in support for Animated.Event and FlatList.

GitHubGitHub
298 stars33 forks0 contributors

What is react-native-collapsing-toolbar?

react-native-collapsing-toolbar is a React Native library that provides a wrapper for Android's native CollapsingToolbarLayout, enabling developers to implement collapsible toolbar animations in React Native Android applications. It integrates with React Native's animation system and scrollable components to deliver a native-like Material Design experience. The library solves the problem of bringing complex Android-specific UI patterns, like collapsing toolbars with parallax effects, to React Native with minimal abstraction.

Target Audience

React Native developers building Android applications who need to implement Material Design patterns, specifically collapsible toolbars with coordinated scrolling behaviors. It is suited for those requiring deep integration with native Android UI components like CoordinatorLayout and NestedScrollView.

Value Proposition

Developers choose this library because it provides direct access to Android's native CollapsingToolbarLayout APIs, ensuring high performance and authentic Material Design behavior. Its seamless integration with Animated.Event and FlatList, along with support for custom animations and parallax effects, offers a more native and flexible solution compared to JavaScript-only alternatives.

Overview

react-native wrapper for android CollapsingToolbarLayout

Use Cases

Best For

  • Implementing collapsible toolbars with Material Design animations in React Native Android apps.
  • Creating parallax scrolling effects within collapsing headers using the CollapsingParallax component.
  • Integrating collapsible toolbars with FlatList by wrapping content in a NestedScrollView via renderScrollComponent.
  • Building custom animations during toolbar collapse/expand using onOffsetChanged events with Animated.Event.
  • Following Android's CoordinatorLayout pattern for proper scrolling coordination between toolbars and content.
  • Developing React Native Android applications that require native-like UI performance and direct access to Android UI APIs.

Not Ideal For

  • Cross-platform React Native apps requiring identical toolbar behavior on both Android and iOS.
  • Projects seeking plug-and-play UI components without manual Android native code integration.
  • Applications needing integrated pull-to-refresh functionality with FlatList in collapsing toolbars.
  • Teams avoiding dependencies on multiple native modules for basic UI effects.

Pros & Cons

Pros

Native Android Performance

Directly wraps Android's CollapsingToolbarLayout, ensuring authentic Material Design animations and smooth scrolling, as emphasized in the project's philosophy of minimal abstraction.

Seamless Animation Integration

Supports Animated.Event via onOffsetChanged events, allowing custom animations during collapse/expand without nested scroll conflicts, demonstrated in the usage examples.

FlatList Compatibility

Works with FlatList by using renderScrollComponent to wrap content in NestedScrollView, enabling efficient list rendering within the collapsing layout, as detailed in the README.

Built-in Parallax Effects

Includes CollapsingParallax component with parallaxMultiplier prop for easy implementation of parallax scrolling effects in headers, showcased in the example GIF.

Cons

Platform Exclusivity

Only supports Android, making it useless for iOS development and requiring separate solutions for cross-platform apps, a significant limitation not addressed in the library.

Fragile Implementation

The README explicitly warns that the component is 'very easy to break' and requires strict adherence to component order, increasing debugging time and risk of layout issues.

Complex Native Setup

Installation demands manual edits to MainApplication.java, build.gradle, and settings.gradle, which is error-prone and complicates project maintenance compared to pure JavaScript libraries.

Missing RefreshControl Support

Does not support RefreshControl when used with FlatList, as noted in the README, limiting functionality for apps that need pull-to-refresh features in scrolling lists.

Frequently Asked Questions

Quick Stats

Stars298
Forks33
Contributors0
Open Issues8
Last commit3 years ago
CreatedSince 2017

Tags

#animation#android#react-native#ui-components#mobile-development#material-design#scrollable-ui#parallax

Built With

A
Android
J
Java
R
React Native

Included in

React Native35.6k
Auto-fetched 10 hours ago

Related Projects

react-native-vector-iconsreact-native-vector-icons

Customizable Icons for React Native with support for image source and full styling.

Stars17,917
Forks2,105
Last commit21 hours ago
lottie-react-nativelottie-react-native

Lottie wrapper for React Native.

Stars17,211
Forks1,801
Last commit5 days ago
react-native-mapsreact-native-maps

React Native Mapview component for iOS + Android

Stars15,997
Forks4,954
Last commit1 day ago
react-native-paperreact-native-paper

Material Design for React Native (Android & iOS)

Stars14,457
Forks2,244
Last commit16 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub