React Native Template for a quick start with typescript, styled-components, styled-system, axios and other features
npm install react-native-template-nave-typescript> React Native Template for a quick start with typescript and other features
``sh`
npx react-native init MyApp --template react-native-template-nave-typescript
- Typescript
- Axios
- Module resolver
- Styled-components
- React-navigation
- Reactotron
Besides of all the things talked in the nave guide, as import standards and best practices using Javascript, there are some best practices to be used, mainly in components and pages creation.
1. Avoid to use unnecessary styleds. We already have the Row, Column, Button and Text component deal with that on pages. Besides that, the mentioned components have the styled-system, that allows to pass margins, padding and anothers ones throught props.
2. In a new component creating, always think about the use of styled-system.
3. NEVER repeat the same code 2 times. Do not copy and paste, instead of this, create some helpers and components. Make your code reusable.
4. If you need to create a new component with variants, take a look at the Text component and use the variant prop from the styled-system.
5. Follow the code pattern and folder standard.
To run this template as a app in your environment follow these steps
Clone the repository
`sh`
git clone https://github.com/naveteam/react-native-nave-typescript.git
If you use SSH keys on Github
`sh`
git clone git@github.com:naveteam/react-native-nave-typescript.git
`sh`
cd react-native-nave-typescript/template
Create the following files, under the template's directory, with the content on their respective files.example file found in this repository
- .prettierrs.js
- .eslintrc.js
- .buckconfig
- .watchmanconfig
Installing the app dependencies
`sh`
yarn && yarn pod-install
Running the application
Android
`sh`
yarn android
iOS
`sh`
yarn ios
Android
`sh`
yarn android
iOS
`sh`
yarn ios
In package.json on the scripts section there are more scripts to manage the application.
Running tests
Android
`sh
detox build --configuration "android.release"
yarn detox-android-release
`
iOS
`sh
detox build --configuration "ios.release"
yarn detox-ios-release
``