All Projects → WataruMaeda → react-native-boilerplate

WataruMaeda / react-native-boilerplate

Licence: MIT license
Expo + Redux + React Navigation Pre-setup Template (expo SDK 44)

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to react-native-boilerplate

react-native-shopping-app
A shopping app using React Navigation, Redux, Redux-Thunk and Firebase.
Stars: ✭ 67 (-52.82%)
Mutual labels:  react-navigation, react-redux, expo
Pillar Valley
👾A cross-platform video game built with Expo, three.js, and Firebase! 🎮🕹
Stars: ✭ 242 (+70.42%)
Mutual labels:  react-navigation, expo
Covid19-Stats-IN
This app helps in tracking COVID-19 cases in India using covid19India apis
Stars: ✭ 13 (-90.85%)
Mutual labels:  react-navigation, react-redux
DLReactNativeArchitecture
React Native Architecture
Stars: ✭ 18 (-87.32%)
Mutual labels:  react-navigation, react-redux
Comicbook
React-Native跨平台漫画App免费视频:http://www.kongyixueyuan.com/course/3528
Stars: ✭ 199 (+40.14%)
Mutual labels:  react-navigation, react-redux
Expo Firebase Starter
🔥⚛️📱 Expo + Firebase Starter Kit
Stars: ✭ 199 (+40.14%)
Mutual labels:  react-navigation, expo
coronadev
Aplicativo para consultar a situação global do COVID-19
Stars: ✭ 44 (-69.01%)
Mutual labels:  react-navigation, expo
React Native Feature Boilerplate
Feature based Architecture for developing Scalable React Native Apps 🚀 using react, redux, sagas and hooks
Stars: ✭ 139 (-2.11%)
Mutual labels:  react-navigation, react-redux
think
Instagram clone using React Native with funcional components, React Hooks, React Navigation 4x and Reactotron debugger
Stars: ✭ 20 (-85.92%)
Mutual labels:  react-navigation, react-redux
acgnfuns-app
A react native app based on expo, dva, etc.
Stars: ✭ 14 (-90.14%)
Mutual labels:  react-navigation, expo
RN-Book-Search
A Book search app using Expo (React Native) and Google Books API
Stars: ✭ 29 (-79.58%)
Mutual labels:  react-navigation, expo
Expo Native Firebase
🔥 Native Firebase Expo App (iOS, Android) Demo for Firestore, Notifications, Analytics, Storage, Messaging, Database 🚨
Stars: ✭ 197 (+38.73%)
Mutual labels:  react-navigation, expo
Expo Uber
Uber UI Clone with React Native & Expo
Stars: ✭ 186 (+30.99%)
Mutual labels:  react-navigation, expo
React Native Examples
A repo that contain React Native examples most related to tutorials I publish
Stars: ✭ 222 (+56.34%)
Mutual labels:  react-navigation, expo
Redux React Navigation Demos
React-Native + Redux + Redux-Persist + React Navigation ( Authentication Flow with Redux demos)
Stars: ✭ 151 (+6.34%)
Mutual labels:  react-navigation, react-redux
react-native-boilerplate
A collection of curated and well maintained React Native boilerplates with various possibilities and combinations.
Stars: ✭ 24 (-83.1%)
Mutual labels:  react-navigation, react-redux
pro-chat
Full featured chat app built with 💙 Expo & Firebase 🔥
Stars: ✭ 24 (-83.1%)
Mutual labels:  react-navigation, expo
Expo Disneyplus
Disney+ UI Clone with React Native & Expo
Stars: ✭ 130 (-8.45%)
Mutual labels:  react-navigation, expo
React Native Boilerplate
A React Native boilerplate with Expo, Redux, React Navigation, Styled Components and some 💕 included.
Stars: ✭ 135 (-4.93%)
Mutual labels:  react-navigation, expo
proffy
React Native + ReactJS + NodeJS project developed on RocketSeat NexLevelWeek. This project is based on an application for connect students and teachers.
Stars: ✭ 30 (-78.87%)
Mutual labels:  react-navigation, expo

About

We spend a large amount of time to setup a project; changing file structure, installing libraries, create reusable components and so on. The purpose of using the project is to minimize the redundant effort to setup a project from scratch. In the boilerplate, it contains only commonly-used libraries and the all setup done for you.

Environment

  • Node: 16.x
  • Yarn: 1.22.x
  • expo/expo-cli: 5.0.3

What's included

Navigation

At the default, you can see 3 types of navigation; stack, tab, and drawer. Here in the code, files are separated by the navigation types. If you don't need drawer navigation for example, you can the remove drawer file and replace the import status here to tab or stack navigator.

Authentication

If your app requires authorization, you need to implement login, signup function. After the user login or logout, the navigation flow should be different. In this case, the route should be switched by the login status. In the navigator, you can set the different navigation changed by login status.

Redux

We are using Redux Toolkit to simplify the redux setup and minimize boilerplates. Redux can contain global state of the app. This is very useful but on the other hand, it takes time to setup if you are not familiar with it. In the boilerplate, you see slices file which contains actions and reducers in a file. Please follow the quick start tutorials to see how store is setup; and how to use Redux state and actions in React Components.

Assets

Images, icons and fonts are controlled under theme. If you add new assets, you need to import the new assets in each files to access the assets from theme. Also, assets preloading is implemented as well. You can also use svg file in the boilerplate. All the assets are ready to use by importing theme.

Absolute path

If your project structure become complicated and has a lot of nested folders, you will have problem with relative paths. In the boilerplate, you can use absolute paths. You can write simple import statement i.e 'components/Button'. No more ../../../components/Button. The configuration is written in babel.config.js.

Code formatting, fixing and testing on pre commit

It's very important to keep code clean to maintain readability and productivity. In the boilerplate, Eslint, Prettier and Jest configuration are done. It's continuously checking and format your code while you coding (Please enable "Format on Save" option if you prefer to format code after save change). After you submit changes, pre commit script will run to handle checking and formatting your code, run test. If the 3 steps are passed, you will be able to push the change.

Automated-deployment with github action

Once you complete your implementation, you may need to publish your package to share to the QA team. The boilerplate already setup automated deployment with expo-github-action. Once you push changes to the main branch, github action handle deployment; publish the package to your expo account. You can check the deployment configuration here.

To connect to your expo account, Read the readme page for instruction. You'll need to generate a token. Then setup token in your github repo Settings > Secrets > Actions. Add action secret named "EXPO_TOKEN". That's it!

Libraries

Libraries for development

How to Use

  1. Download zip or click "Use this template"
  2. Update app.json
 "name": "your-app-name",
 "slug": "your-app-name",
  1. yarn install or npm install
  2. If you haven't setup expo, please follow the instruction to complete setup
  3. In terminal, expo start

Licence

This project is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].