Skip to content

Commit dcff622

Browse files
docs: rewrite Community libraries and remove Alternatives (react-navigation#1219)
* Update anti-pitch to recommend RNN * Remove alternatives * docs: rewrite community libraries section * Describe file-based routing
1 parent 6df0df8 commit dcff622

File tree

8 files changed

+50
-78
lines changed

8 files changed

+50
-78
lines changed

versioned_docs/version-6.x/alternatives.md

Lines changed: 0 additions & 10 deletions
This file was deleted.
Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,44 @@
11
---
2-
id: community-libraries-and-navigators
3-
title: Community-developed Navigators and Libraries
4-
sidebar_label: Community Navigators and Libraries
2+
id: navigation-solutions-and-community-libraries
3+
title: Navigation Solutions and Community Libraries
4+
sidebar_label: Navigation Solutions and Community Libraries
55
---
66

77
> Libraries listed in this guide may not have been updated to work with the latest version of React Navigation. Please refer to the library's documentation to see which version of React Navigation it supports.
88
9-
# Navigators
9+
# Solutions built on top of React Navigation
1010

11-
## Fluid Transitions
11+
## Solito
1212

13-
Fluid Transitions is a library that provides Shared Element Transitions during navigation between screens using react-navigation.
13+
A tiny wrapper around React Navigation and Next.js that lets you share navigation code across platforms. Also, it provides a set of patterns and examples for building cross-platform apps with React Native + Next.js.
1414

15-
A Shared Element Transition is the visualization of an element in one screen being transformed into a corresponding element in another screen during the navigation transition.
15+
#### Links
1616

17-
The library implements a custom navigator called `FluidNavigator` that makes all this and more possible.
17+
[Documentation](https://solito.dev/)
1818

19-
#### Links
19+
[github.com/nandorojo/solito](https://github.com/nandorojo/solito)
20+
21+
## Expo Router
2022

21-
[github.com/fram-x/FluidTransitions](https://github.com/fram-x/FluidTransitions)
23+
File-based router for React Native apps. With Expo Router pages are automatically generated by simply creating files in a project.
2224

23-
# Libraries
25+
#### Links
26+
27+
[Documentation](https://expo.github.io/router/docs)
2428

25-
## react-navigation-collapsible
29+
[github.com/expo/router](https://github.com/expo/router)
2630

27-
react-navigation-collapsible is a library and a `Higher Order Component` that adjusts your screen options and makes your screen header collapsible.
31+
## Navio
2832

29-
Since react-navigation's header is designed as `Animated` component, you can animate the header by passing `Animated.Value` from your `ScrollView` or `FlatList` to the header.
33+
A navigation library built on top of React Navigation. It's main goal is to improve DX by building the app layout in one place and using the power of TypeScript to provide route names autocompletion.
3034

3135
#### Links
3236

33-
[github.com/benevbright/react-navigation-collapsible](https://github.com/benevbright/react-navigation-collapsible)
37+
[github.com/kanzitelli/rn-navio](https://github.com/kanzitelli/rn-navio)
38+
39+
[Demo on Snack](https://snack.expo.dev/@kanzitelli/rn-navio-snack)
3440

35-
[Demo on Snack](https://snack.expo.io/@benevbright/react-navigation-collapsible)
41+
# Community libraries
3642

3743
## react-native-screens
3844

@@ -59,12 +65,3 @@ Provides simple HOCs that map react-navigation props to your screen components d
5965
#### Links
6066

6167
[github.com/vonovak/react-navigation-props-mapper](https://github.com/vonovak/react-navigation-props-mapper)
62-
63-
## react-navigation-backhandler
64-
65-
Easily handle Android back button behavior with React-Navigation with a component based API.
66-
67-
#### Links
68-
69-
[github.com/vonovak/react-navigation-backhandler](https://github.com/vonovak/react-navigation-backhandler)
70-

versioned_docs/version-6.x/pitch.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,5 @@ It's useful when considering whether or not to use a project to understand the t
1919

2020
- Improvements may require breaking changes. We are working to make ["easy things easy and hard things possible"](https://www.quora.com/What-is-the-origin-of-the-phrase-make-the-easy-things-easy-and-the-hard-things-possible) and this may require us to change the API at times.
2121
- Some navigators don't directly use the native navigation APIs on iOS and Android; rather, they use the lowest level pieces and then re-creates some subset of the APIs on top. This is a conscious choice in order to make it possible for users to customize any part of the navigation experience (because it's implemented in JavaScript) and to be able to debug issues that they encounter without needing to learn Objective C / Swift / Java / Kotlin.
22-
- If you need the exact platform behavior, you can choose to use the navigators that use native platform primitives (e.g. [Native Stack Navigator](native-stack-navigator.md)), or use another library that wraps the platform APIs. Read more about these in [Alternatives](alternatives.md) and be sure to understand the tradeoffs that they make before digging in!
22+
- If you need the exact platform behavior, you can choose to use the navigators that use native platform primitives (e.g. [Native Stack Navigator](native-stack-navigator.md)), or use a different navigation library which provides fully native navigation APIs (e.g. [React Native Navigation](https://github.com/wix/react-native-navigation)).
2323
- There are other limitations which you may want to consider, see [Limitations](limitations.md) for more details.

versioned_docs/version-7.x/alternatives.md

Lines changed: 0 additions & 10 deletions
This file was deleted.
Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,44 @@
11
---
2-
id: community-libraries-and-navigators
3-
title: Community-developed Navigators and Libraries
4-
sidebar_label: Community Navigators and Libraries
2+
id: navigation-solutions-and-community-libraries
3+
title: Navigation Solutions and Community Libraries
4+
sidebar_label: Navigation Solutions and Community Libraries
55
---
66

77
> Libraries listed in this guide may not have been updated to work with the latest version of React Navigation. Please refer to the library's documentation to see which version of React Navigation it supports.
88
9-
# Navigators
9+
# Solutions built on top of React Navigation
1010

11-
## Fluid Transitions
11+
## Solito
1212

13-
Fluid Transitions is a library that provides Shared Element Transitions during navigation between screens using react-navigation.
13+
A tiny wrapper around React Navigation and Next.js that lets you share navigation code across platforms. Also, it provides a set of patterns and examples for building cross-platform apps with React Native + Next.js.
1414

15-
A Shared Element Transition is the visualization of an element in one screen being transformed into a corresponding element in another screen during the navigation transition.
15+
#### Links
1616

17-
The library implements a custom navigator called `FluidNavigator` that makes all this and more possible.
17+
[Documentation](https://solito.dev/)
1818

19-
#### Links
19+
[github.com/nandorojo/solito](https://github.com/nandorojo/solito)
20+
21+
## Expo Router
2022

21-
[github.com/fram-x/FluidTransitions](https://github.com/fram-x/FluidTransitions)
23+
File-based router for React Native apps. With Expo Router pages are automatically generated by simply creating files in a project.
2224

23-
# Libraries
25+
#### Links
26+
27+
[Documentation](https://expo.github.io/router/docs)
2428

25-
## react-navigation-collapsible
29+
[github.com/expo/router](https://github.com/expo/router)
2630

27-
react-navigation-collapsible is a library and a `Higher Order Component` that adjusts your screen options and makes your screen header collapsible.
31+
## Navio
2832

29-
Since react-navigation's header is designed as `Animated` component, you can animate the header by passing `Animated.Value` from your `ScrollView` or `FlatList` to the header.
33+
A navigation library built on top of React Navigation. It's main goal is to improve DX by building the app layout in one place and using the power of TypeScript to provide route names autocompletion.
3034

3135
#### Links
3236

33-
[github.com/benevbright/react-navigation-collapsible](https://github.com/benevbright/react-navigation-collapsible)
37+
[github.com/kanzitelli/rn-navio](https://github.com/kanzitelli/rn-navio)
38+
39+
[Demo on Snack](https://snack.expo.dev/@kanzitelli/rn-navio-snack)
3440

35-
[Demo on Snack](https://snack.expo.io/@benevbright/react-navigation-collapsible)
41+
# Community libraries
3642

3743
## react-native-screens
3844

@@ -59,12 +65,3 @@ Provides simple HOCs that map react-navigation props to your screen components d
5965
#### Links
6066

6167
[github.com/vonovak/react-navigation-props-mapper](https://github.com/vonovak/react-navigation-props-mapper)
62-
63-
## react-navigation-backhandler
64-
65-
Easily handle Android back button behavior with React-Navigation with a component based API.
66-
67-
#### Links
68-
69-
[github.com/vonovak/react-navigation-backhandler](https://github.com/vonovak/react-navigation-backhandler)
70-

versioned_docs/version-7.x/pitch.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,5 @@ It's useful when considering whether or not to use a project to understand the t
1919

2020
- Improvements may require breaking changes. We are working to make ["easy things easy and hard things possible"](https://www.quora.com/What-is-the-origin-of-the-phrase-make-the-easy-things-easy-and-the-hard-things-possible) and this may require us to change the API at times.
2121
- Some navigators don't directly use the native navigation APIs on iOS and Android; rather, they use the lowest level pieces and then re-creates some subset of the APIs on top. This is a conscious choice in order to make it possible for users to customize any part of the navigation experience (because it's implemented in JavaScript) and to be able to debug issues that they encounter without needing to learn Objective C / Swift / Java / Kotlin.
22-
- If you need the exact platform behavior, you can choose to use the navigators that use native platform primitives (e.g. [Native Stack Navigator](native-stack-navigator.md)), or use another library that wraps the platform APIs. Read more about these in [Alternatives](alternatives.md) and be sure to understand the tradeoffs that they make before digging in!
22+
- If you need the exact platform behavior, you can choose to use the navigators that use native platform primitives (e.g. [Native Stack Navigator](native-stack-navigator.md)), or use a different navigation library which provides fully native navigation APIs (e.g. [React Native Navigation](https://github.com/wix/react-native-navigation)).
2323
- There are other limitations which you may want to consider, see [Limitations](limitations.md) for more details.

versioned_sidebars/version-6.x-sidebars.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,14 +101,13 @@
101101
],
102102
"Additional Resources": [
103103
"version-6.x/migration-guides",
104-
"version-6.x/community-libraries-and-navigators",
104+
"version-6.x/navigation-solutions-and-community-libraries",
105105
"version-6.x/more-resources"
106106
],
107107
"Meta": [
108108
"version-6.x/pitch",
109-
"version-6.x/alternatives",
110109
"version-6.x/used-by",
111110
"version-6.x/contributing"
112111
]
113112
}
114-
}
113+
}

versioned_sidebars/version-7.x-sidebars.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,14 +108,13 @@
108108
],
109109
"Additional Resources": [
110110
"version-7.x/migration-guides",
111-
"version-7.x/community-libraries-and-navigators",
111+
"version-7.x/navigation-solutions-and-community-libraries",
112112
"version-7.x/more-resources"
113113
],
114114
"Meta": [
115115
"version-7.x/pitch",
116-
"version-7.x/alternatives",
117116
"version-7.x/used-by",
118117
"version-7.x/contributing"
119118
]
120119
}
121-
}
120+
}

0 commit comments

Comments
 (0)