# aksonov/react-native-router-flux

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/aksonov-react-native-router-flux).**

8,927 stars · 2,074 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/aksonov/react-native-router-flux
- awesome-repositories: https://awesome-repositories.com/repository/aksonov-react-native-router-flux.md

## Description

This project is a cross-platform mobile navigation library and declarative routing engine. It maps components to named scenes within a centralized configuration to manage application flow and screen transitions.

The system distinguishes itself through a variety of specialized navigation patterns, including a mobile drawer navigation system for side menus and a tab navigation framework for organizing top-level views. It also features a modal overlay manager for rendering screens as pop-ups or transparent lightboxes and a deep linking handler that maps incoming URIs to specific application scenes.

The library covers broad capability areas including hierarchical stack organization, unidirectional navigation state management, and the implementation of asynchronous transition handlers. It also provides tools for navigation header configuration, screen parameter passing, and the creation of nested navigation hierarchies.

## Tags

### Mobile Development

- [React Native Navigation Frameworks](https://awesome-repositories.com/f/mobile-development/react-native-navigation-frameworks.md) — Provides a centralized routing configuration to manage screen transitions and flow across React Native applications.
- [Drawer Navigation Systems](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-libraries/navigation-drawer-libraries/drawer-navigation-systems.md) — Provides a dedicated mobile drawer navigation system for side menus and route access. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md))
- [Cross-Platform Mobile Navigation Libraries](https://awesome-repositories.com/f/mobile-development/cross-platform-mobile-navigation-libraries.md) — Offers a declarative routing system for managing screen transitions and navigation hierarchies in cross-platform mobile apps.
- [Mobile App Routers](https://awesome-repositories.com/f/mobile-development/mobile-app-routers.md) — Functions as a mobile app router that maps components to named scenes to manage application flow.
- [Nested](https://awesome-repositories.com/f/mobile-development/navigation-routing/navigators/nested.md) — Supports complex layouts by allowing multiple navigators to be nested within a root navigator. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README3.md))
- [Stack-Based Navigation History](https://awesome-repositories.com/f/mobile-development/stack-based-navigation-history.md) — Maintains a hierarchical list of active scenes to manage back-button behavior and clear history during transitions.
- [Deep Link Routing Maps](https://awesome-repositories.com/f/mobile-development/deep-link-routing-maps.md) — Translates incoming deep link URIs into specific named routes and extracts URL parameters for target screens.
- [Deep Linking](https://awesome-repositories.com/f/mobile-development/mobile-capabilities/deep-linking.md) — Implements mobile deep linking to map external URIs to specific internal screens and components.

### Software Engineering & Architecture

- [External Navigation State Controllers](https://awesome-repositories.com/f/software-engineering-architecture/external-navigation-state-controllers.md) — Allows modification of navigation state from external stores or reducers to decouple routing logic from the UI layer. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README.md))
- [Unidirectional State Management](https://awesome-repositories.com/f/software-engineering-architecture/unidirectional-state-management.md) — Coordinates screen transitions and routing logic using a unidirectional data flow for consistent application state. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/package.json))
- [Contextual Data Injection](https://awesome-repositories.com/f/software-engineering-architecture/contextual-data-injection.md) — Implements dynamic property injection to pass data into destination screen components during transitions.
- [Asynchronous Transition Guards](https://awesome-repositories.com/f/software-engineering-architecture/external-content-handlers/navigation-handlers/asynchronous-transition-guards.md) — Provides asynchronous enter and exit handlers for conditional navigation and data validation during screen transitions. ([source](https://github.com/aksonov/react-native-router-flux#readme))
- [Modal Navigation Renderers](https://awesome-repositories.com/f/software-engineering-architecture/overlay-rendering-architectures/modal-navigation-renderers.md) — Ships specialized renderers to display screens as modal pop-ups or lightboxes on top of the primary navigation stack.

### User Interface & Experience

- [Custom Screen Container Renderers](https://awesome-repositories.com/f/user-interface-experience/custom-screen-container-renderers.md) — Offers specialized renderers to display content as modals or action sheets instead of standard screen transitions. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README3.md))
- [Route Declarations](https://awesome-repositories.com/f/user-interface-experience/declarative-component-architectures/route-declarations.md) — Provides a declarative system for mapping named scenes to components in a centralized routing configuration.
- [Navigation Routing](https://awesome-repositories.com/f/user-interface-experience/navigation-routing.md) — Provides a centralized system for defining and managing the overall navigation paths and flow of the application. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md))
- [Hierarchical Navigation Stacks](https://awesome-repositories.com/f/user-interface-experience/navigation-routing/hierarchical-navigation-stacks.md) — Organizes related screens into hierarchical stacks to maintain a structured navigation history. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/index.d.ts))
- [Independent Navigation Stacks](https://awesome-repositories.com/f/user-interface-experience/navigation-routing/independent-navigation-stacks.md) — Groups related scenes into independent navigation stacks to isolate routing logic and header behaviors. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md))
- [Drawer Navigation Integration](https://awesome-repositories.com/f/user-interface-experience/sidebars/drawer-navigation-integration.md) — Integrates slide-out drawer menus directly into the declarative routing configuration for accessing application routes. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README2.md))
- [Tabbed Navigation](https://awesome-repositories.com/f/user-interface-experience/tabbed-navigation.md) — Organizes screens into a tabbed interface with customizable labels, icons, and positioning. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/index.d.ts))
- [Drawers](https://awesome-repositories.com/f/user-interface-experience/drawers.md) — Integrates slide-out side drawers to provide a secondary navigation layer for accessing application sections.
- [Modal Overlays](https://awesome-repositories.com/f/user-interface-experience/modal-overlays.md) — Provides a mechanism for rendering screens as modal overlays that slide from the bottom to cover primary content. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md))
- [Navigation Bar Controls](https://awesome-repositories.com/f/user-interface-experience/navigation-bar-controls.md) — Provides APIs for configuring the appearance, visibility, and styling of the navigation bars. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README.md))
- [Navigation Headers](https://awesome-repositories.com/f/user-interface-experience/navigation-headers.md) — Provides tools for customizing the appearance, titles, and platform-specific layout settings of navigation headers. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md))
- [Navigation Menus](https://awesome-repositories.com/f/user-interface-experience/navigation-menus.md) — Implements a slide-out side menu system for accessing different application routes.
- [Navigation Guards](https://awesome-repositories.com/f/user-interface-experience/navigation-routing/navigation-guards.md) — Implements navigation guards that intercept screen transitions to perform data validation or authentication checks.
- [Modal Overlays](https://awesome-repositories.com/f/user-interface-experience/overlay-dialogs/modal-overlays.md) — Provides modal and overlay management for rendering pop-ups and transparent lightboxes.
- [View Transitions](https://awesome-repositories.com/f/user-interface-experience/view-transitions.md) — Triggers transitions to specific scenes, pops screens from the stack, or refreshes views. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README.md))

### Networking & Communication

- [Deep Link Handlers](https://awesome-repositories.com/f/networking-communication/deep-link-handlers.md) — Provides deep link handlers that map incoming URIs to specific app scenes and extract parameters.
- [Deep Linking](https://awesome-repositories.com/f/networking-communication/deep-linking.md) — Maps incoming URIs to specific application scenes to enable deep linking from external sources. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md))

### Web Development

- [State-Driven Routing](https://awesome-repositories.com/f/web-development/dynamic-routing/state-driven-routing.md) — Automatically switches the active screen based on application state changes to toggle between different view modes. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README3.md))
- [History Stack Controllers](https://awesome-repositories.com/f/web-development/navigation-history-providers/history-stack-controllers.md) — Enables clearing the history stack during transitions to remove back buttons and prevent returning to previous screens. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README3.md))
- [Transition Parameter Injection](https://awesome-repositories.com/f/web-development/routing-systems/routing/parameter-handling-utilities/route-parameter-captures/transition-parameter-injection.md) — Automatically injects parameters passed during navigation transitions into the destination screen properties. ([source](https://github.com/aksonov/react-native-router-flux/blob/master/README3.md))

### Part of an Awesome List

- [Navigation](https://awesome-repositories.com/f/awesome-lists/devtools/navigation.md) — Router built on top of native navigation APIs.
- [UI Components](https://awesome-repositories.com/f/awesome-lists/devtools/ui-components.md) — A comprehensive navigation library for complex app flows.
