Run the following command to create a new project with this boilerplate:
npx create-react-native-app -t https://github.com/thisiswunder/wunder-boilerplate
In order to change app's name, please make necessary changes in app.json
and package.json
.
After that, make sure to run following command to generate your /ios
and /android
folders:
yarn prebuild
- Expo SDK - a set of tools and services built around React Native and native platforms.
- React Navigation (v6) - routing and navigation for React Native apps.
- Tamagui - Tamagui lets you share more code between web and native apps while improving, rather than sacrificing, DX, performance, and code maintainability.
- Reanimated 3 - React Native's Animated library reimplemented.
- Zustand - A small, fast and scalable bearbones state-management solution using simplified flux principles. Has a comfy API based on hooks, isn't boilerplatey or opinionated.
- React Native Gesture Handler - native touches and gesture system for React Native.
- Generate React CLI - To help speed up productivity in React projects and stop copying, pasting, and renaming files each time you want to create a new component.
In this template we are using Generate React CLI to generate new components, pages or stores to kickstart your functions. Templates for these generators are located in ./templates
folder. You can modify them to fit your needs. To use it:
yarn create:component MyComponent
yarn create:page MyPage
yarn create:store MyStore
This template is using Tamagui as a design system. It's a set of components that are shared between web and native apps. You can configure it to use your own design system or remove it completely. To get started with Tamagui, please refer to Tamagui's documentation.