- Quick scaffolding
- Create components, containers, routes, selectors and sagas - and their tests - right from the CLI!
- Instant feedback
- Enjoy the best DX (Developer eXperience) and code your app at the speed of thought! Your saved changes to the CSS and JS are reflected instantaneously without refreshing the page. Preserve application state even when you update something in the underlying code!
- Predictable state management
- Unidirectional data flow allows for change logging and time travel debugging.
- Next generation JavaScript
- Use template strings, object destructuring, arrow functions, JSX syntax and more.
- Industry-standard i18n internationalization support
- Scalable apps need to support multiple languages, easily add and support multiple languages with `react-intl`.
- Static code analysis
- Focus on writing new features without worrying about formatting or code quality. With the right editor setup, your code will automatically be formatted and linted as you work.
But wait... there's more!
- The best test setup: Automatically guarantee code quality and non-breaking changes. (Seen a react-native app with 100% test coverage before?)
- Stay fast: Profile your app's performance from the comfort of your command line!
There’s also a fantastic video on how to structure your React apps with scalability in mind. It provides rationale for the majority of boilerplate's design decisions.
Keywords: React.js, React-Native, Redux, Hot Reloading, ESNext, Babel, react-navigation, redux-saga, IOS, Android
-
Make sure that you have Node.js v8.15.1 and npm v5 or above installed.
-
Clone this repo using
git clone --depth=1 https://github.com/iethem/react-native-boilerplate.git <YOUR_PROJECT_NAME>
-
Move to the appropriate directory:
cd <YOUR_PROJECT_NAME>
. -
Run
npm run setup
in order to install dependencies and clean the git repo.
At this point you can run the following commands to see the example app:For IOS:
cd ios pod install # to install pod dependencies cd .. # to come back to the root folder npm run ios # to run the iOS application
For Android:
npm run android # to run the Android application
Start the server:
npm start
-
Run
npm run clean
to delete the example app.
Now you're ready to rumble!
Please note that this boilerplate is production-ready and not meant for beginners! If you're just starting out with react or redux, please refer to https://github.com/petehunt/react-howto instead. If you want a solid, battle-tested base to build your next product upon and have some experience with react, this is the perfect start for you.
- The Hitchhiker's Guide to
react-native-boilerplate
: An introduction for newcomers to this boilerplate. - Overview: A short overview of the included tools
- Commands: Getting the most out of this boilerplate
- Testing: How to work with the built-in test harness
- Your app: Supercharging your app with Routing, Redux, simple asynchronicity helpers, etc.
- Troubleshooting: Solutions to common problems faced by developers.
Thanks to you all the react-boilerplate contributors!
Contributions of any kind welcome!
This project is licensed under the MIT license, Copyright (c) 2019 İbrahim Ethem Topçu. For more information see LICENSE.md.