A complete native navigation solution for React Native - nav bars, tabs, drawer, modals
Objective-C Java JavaScript Other
Latest commit df72c56 Jan 24, 2017 @guyca guyca committed on GitHub Call newStack by navigatorId (#685)


React Native Navigation

NPM Version NPM Downloads Build Status Join us on Discord

App-wide support for 100% native navigation with an easy cross-platform interface. For iOS, this package is a wrapper around react-native-controllers, but provides a simplified more abstract API over it. This abstract API will be unified with the Android solution which is currently work in progress. It also fully supports redux if you use it.


We are currently working hard on redesigning and refactoring this project with high quality and robustness in mind. As a result, issues and pull requests will take more time to process.

To avoid any confusion and breaking existing projects, all continuous development is published under the npm tag next, with version 2.0.0-experimental.x. Once stable, we will publish it as 2.0.0. This version supports react-native 0.37.0.

The last stable version is 1.30.x with npm tag latest. This version supports react-native 0.25.1. It's installation instructions are here.

If you don't want your code to break on a daily basis and don't need the new features ASAP please use the latest version or just specify a specific version number.


Why use this package

One of the major things missing from React Native core is fully featured native navigation. Navigation includes the entire skeleton of your app with critical components like nav bars, tab bars and side menu drawers.

If you're trying to deliver a user experience that's on par with the best native apps out there, you simply can't compromise on JS-based components trying to fake the real thing.

For example, this package replaces the native NavigatorIOS that has been abandoned in favor of JS-based solutions that are easier to maintain. For more details see in-depth discussion here.


The MIT License.