react-native-template-basic-app v0.2.0
React Native Basic App Template
A simple basic template to start a new React Native app with ESLint and custom scripts.
Requirements
- node
- react-native-cli
- yarn
Usage
Create a new project passing a template:
react-native init [ProjectName] --template basic-app
Wait for download dependencies.
Finish installation
Run node setup.js
to inject custom scripts and remove unnecessary files.
For VSCode users
If you use Path Intellisense extension add the following to settings.json
:
"path-intellisense.mappings": {
"~": "${workspaceRoot}/src"
}
Flow configuration
Open .flowconfig
file. Go to the [options]
section and find the line where is module.name_mapper
.
Add this to the next line:
module.name_mapper='^~\/\(.*\)$' -> '<PROJECT_ROOT>/src/\1'
It should look like the following:
module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub'
module.name_mapper='^~\/\(.*\)$' -> '<PROJECT_ROOT>/src/\1'
Includes
- ESlint (extends Airbnb)
- Husky
- Lint Staged
- Prettier
- Flow
- Enzyme
Custom Scripts
android:install
- Run in Release modeios:install
- Run in Release modeproject:clean
- Clean projectprettier:check
- Check for unformatted filesprettier:all
- Format filesflow
- Run Flowlint
- Run lintstart
- Start Metro Bundlerstart:clean
- Start Metro Bundler without cachetest
- Run jesttest:watch
- Run jest in watch mode
Contributing
Clone this repo with git clone https://github.com/lucianomlima/react-native-template-basic react-native-template-basic-app
cause npm needs project dir name to be equal to project name in package.json
.
To execute the project with your changes, you can use the absolute path of cloned repo with react-native-cli
:
react-native init [PROJECT_NAME] --template file:///path/to/repo
License
MIT