Simple yet practical starter with React Native Navigation v6, and Redux (pick one) and more goodies inside.
It is a basic Reddit App implementation (list of subreddits and news only) where the main goal to achieve was usage of functional components with React Native Navigation. So no more , only functions with React Hooks and native navigation.
The app logic is written in one way: using Redux with hooks in class MyComponent extends React.Component { ... }
/srcRedux
folder. You can find instructions for launching the app using one or another way in index.js
file.
So now you are free to choose any option you love and stick with it!
- React Native Navigation v6 - truly native navigation experience for iOS and Android
- React Native Navigation Hooks - a set of React hooks for React Native Navigation
- React Native Vector Icons - customizable icons for React Native
- React Native Gesture Handler - native touches and gesture system for React Native
- Lodash - just in case, we will need it one time anyways
- Typescript - strict syntactical superset of JavaScript
REDUX |
---|
Redux - a predictable state container |
React Redux - official React bindings for Redux |
Redux Saga - side effect model for Redux apps |
Redux Persist - persist and rehydrate a Redux store |
- Clone the repo
git clone https://github.com/truongluu/react-native-navigation-dva.git new-project
- Install packages
cd new-project
npm i
cd ios/ && pod install && cd ../
-
Rename the app using react-native-rename if needed. If you do so, don't forget to run
cd ios/ && pod install && cd ../
when the process is finished. Also keep in mind that bundle identifier must be valid for both platforms or change it manually. -
Run it!
react-native run-ios
react-native run-android
There are still some things I would like to add to the starter:
- Notifications by Wix.
- Continous delivery via Codepush.
- Dark Mode via react-native-dark-mode.
- Localization via i18next.
- Maybe something else. Feel free to open an issue for suggestions.
This project is MIT licensed