Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/iethem/react-native-boilerplate

A react-native project template with the best DX and a focus on performance and best practices.
https://github.com/iethem/react-native-boilerplate

react react-boilerplate react-native react-native-boilerplate react-native-games react-navigation react-navigation-v5 styled-components

Last synced: about 2 months ago
JSON representation

A react-native project template with the best DX and a focus on performance and best practices.

Awesome Lists containing this project

README

        

![alt text](./banner.png "banner")

Start your next react-native project in seconds

A react-native project template with the best DX and a focus on performance and best practices.




Supports Expo iOS

Supports Expo Android


Inspired and forked from react-boilerplate.

## Features


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

## Quick start (recommended)

> Make sure that you have Node.js v8.15.1 and npm v5 or above installed. Also, [the development environment](https://reactnative.dev/docs/environment-setup) is configured properly.

You can use react-native-boilerplate as a template when creating projects with `react-native init`:
```command
npx react-native init --template rnb-init
```

## Manual Installation

#### 1. Clone this repo using the following command:
```command
git clone --depth=1 https://github.com/iethem/react-native-boilerplate.git
```
#### 2. Move to the appropriate directory:
```command
cd
```
#### 3. In order to rename the application (optional):
```command
npm run rename "Travel App"
```
> See details for [renaming the app](docs/general/commands.md#renaming-the-app).
#### 4. 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:
```command
npx pod-install # to install pod dependencies
npm run ios # to run the iOS application
```
For Android:
```command
# Make sure the ANDROID_HOME environment variable is configured properly

npm run android # to run the Android application
```
Start the server:
```command
npm start
```
#### 5. 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.

## Documentation
:warning: **WORK IN PROGRESS**

- [**The Hitchhiker's Guide to `react-native-boilerplate`**](docs/general/introduction.md): An introduction for newcomers to this boilerplate.
- [Overview](docs/general): A short overview of the included tools
- [**Commands**](docs/general/commands.md): Getting the most out of this boilerplate
- [Testing](docs/testing): How to work with the built-in test harness
- [Your app](docs/js): Supercharging your app with Navigating, Redux, simple
asynchronicity helpers, etc.
- [**Troubleshooting**](docs/general/gotchas.md): Solutions to common problems faced by developers.

## Examples

- [react-native-games](https://github.com/iethem/react-native-games)

## Contributors

Thanks to you all the [react-boilerplate contributors](https://github.com/react-boilerplate/react-boilerplate#contributors)!

Contributions of any kind welcome!

## License

This project is licensed under the MIT license, Copyright (c) 2019 İbrahim Ethem Topçu. For more information see [LICENSE](LICENSE).