This React Native template for building solid applications through SOC(separation of concerns) between the View, state management and business logic.
To create a new project:
- Clone this repository
git@github.com:mengheangrat/react-native-boilerplate.git
- Remove the previous git history:
rm -rf .git/
- Install the npm dependencies by running
yarn
- Rename the project to your project name:
yarn run rename -- <YourProjectName>
(the default name is MyApp)
The boilerplate contains:
- React Native (v0.63.4)
- Redux (v4.0.5) to help manage state
- Redux Persist (v6.0.0) to persist the Redux state
- Redux Sagas (v1.1.3) to separate side-effects and logic from state and View
- React Navigation (v5)
- apisauce (1.1.1)
- reduxsauce (v1.0.1) to facilitate using Redux
- reselect (v4.0.0)
App/Components
: presentational componentsApp/Config
: configuration of the applicationApp/Containers
: container components, i.e. the application's screensApp/Assets
: assets (image, audio files, ...) used by the applicationApp/Navigators
: react navigation navigatorsApp/Sagas
: redux sagasApp/Services
: application services, e.g. API clientsApp/Redux
: redux [actions, reducers and stores] merge into a file(https://redux.js.org/basics)App/Theme
: base styles for the application
- Mengheang RAT - GitHub
- [YOUR NAME HERE] - Feel free to contribute to the codebase by resolving any open issues, refactoring, adding new features, writing test cases or any other way to make the project better and helpful to the community. Feel free to fork and send pull requests.
This project is released under the MIT License.
Config react-native-localize
Config react-native-config
Config End-to-End with Detox
Storybook