Production ready starter to build cross platform app with React Native.
git clone git@github.com:turbothinh/react-native-cross-platform-starter.git && cd react-native-cross-platform-starter && yarn && yarn app:dep
- Run the app: On terminal 1, run packager with
yarn app:start
. On terminal 2, runyarn ios
oryarn android
for respective platform. Don't run both commands at the same time. - Run on web: Run
yarn web:dev
- Run on desktop:
yarn electron
- Change project name: Inside root folder, run
npx react-native-rename <your-new-project-name>
to rename the app - With your IDE, global search and replace
rnStarter
- Change project icon: Replace the
icon.png
andlogo.png
insidepublic/assets
folder with your own assets. Then runyarn generate:icon && yarn generate:bootsplash
- Follow React-Navigation guide to replace the existing deep-linking prefixes with your domains
This project comes with some Flipper integrations by default. You should install Flipper for desktop together with these plugins for development:
For development on the web, you can also install Redux-Debugger Chrome extension
- Fastlane
- Codepush
- Platforms
- Run on iOS with
react-native
- Run on Android with
react-native
- Run on web with
react-native-web
- Run on desktop with
electron
- Run on iOS with
- Development
- Testing with
Jest
' - Absolute import paths
- Webpack loaders for JS, TS, fonts, files included
- Native debuggers with Flipper: reactotron, redux-debugger, etc
- Redux debuggger for web
- Testing with
- Design
- Design system with Dark mode
- Icons with
eva-icons
- Render semantic tags like H1, H2, H3 tag on web for better SEO
- Libraries
-
Redux
+Redux-Toolkit
for state management +Persist-storage
- i18n with
i18next
- Tab navigation with
react-navigation
- Deep linking
-
I do accept PRs, so please feel free to create PRs. It is prefered that the commits are following Conventional Commit
This project is licensed under MIT License.