React Native Template for @uiw/react-native.
Migrate from @uiw/react-native-template 0.1.2 to v1.1.0
This template includes the following:
- Elegant usage directly within the React Native CLI
- React Native 0.60 support (now with Hooks! ๐).
- Easy to use and understand folder structure to get you up and running as fast as possible.
- @uiw/react-native component framework and themes.
- Using react-navigation to routing and navigate your React Native applications.
- Redux support (with @rematch example)
- ESLint, and Prettier configured out-of-the-box
- Using mocker-api that creates mocks for REST APIs.
๐ง This template only works with the new CLI. This template is intended for React Native versions >= 0.61
. It has not been tested with previous versions.
Note on the legacy CLI
๐ง There seems to be quite some confusion about the legacy CLI. This template only works with the new CLI. Make sure you have uninstalled the legacy react-native-cli
first (npm uninstall -g react-native-cli
), for the below command to work.
npm uninstall -g react-native-cli
Further information can be found here: https://github.com/react-native-community/cli#about
๐ง๐ง If you wish to not use react-native@0.70.0
or higher
help
Check whether your ruby version is higher than 2.7.5
bundle install
cd ios && bundle exec pod install
๐ง๐ง MacBook Pro with a M1 ๐ง๐ง
# Install ffi
sudo arch -x86_64 gem install ffi
rm -rf Pods Podfile.lock
# Clear pods.
pod deintegrate
# pod rm Podfile.lock
arch -x86_64 pod install
# Re-install pods
arch -x86_64 pod install --repo-update --verbose
yarn run ios # Run instructions for iOS
yarn run api
react-native@0.61.0
or higher
npx react-native init MyApp --template @uiw/react-native-template
# npx react-native init MyApp --template @uiw/react-native-template@v1.0.0
If you wish to not use npx
you can also install the new CLI globally (npm i -g @react-native-community/cli
or yarn global add @react-native-community/cli
).
npx react-native init MyApp --template @uiw/react-native-template
cd MyApp/ios
# Installing CocoaPods dependencies
pod install
# This will initialize new project using template from TEMPLATE_NAME package
npx react-native init ProjectName --template ${TEMPLATE_NAME}
# This will initialize new project using init command from react-native@VERSION
# but will use TEMPLATE_NAME custom template
npx react-native@${VERSION} init ProjectName --template ${TEMPLATE_NAME}
yarn run doc
Edit package.json > prepare script and run it once:
npm pkg set scripts.prepare="husky install"
npm run prepare
Add a hook:
npx husky add .husky/pre-commit "npm run precommit"
git add .husky/pre-commit
Make a commit:
git commit -m "Keep calm and commit"
# `npm precommit` will run
@react-navigation/native
โโโreact-native-gesture-handler
โโโreact-native-reanimated
โโโreact-native-screens
โโโreact-native-safe-area-context
โโโ@react-native-community/masked-view
โโโ Gemfile
โโโ README.md
โโโ __tests__
โย ย โโโ App-test.js
โโโ _bundle
โย ย โโโ config
โโโ _node-version
โโโ android
โย ย โโโ app
โย ย โโโ build.gradle
โย ย โโโ gradle
โย ย โโโ gradle.properties
โย ย โโโ gradlew
โย ย โโโ gradlew.bat
โย ย โโโ settings.gradle
โโโ app.json
โโโ babel.config.js
โโโ index.js
โโโ ios
โย ย โโโ HelloWorld
โย ย โโโ HelloWorld.xcodeproj
โย ย โโโ HelloWorld.xcworkspace
โย ย โโโ HelloWorldTests
โย ย โโโ Podfile
โย ย โโโ Podfile.lock
โย ย โโโ Pods
โย ย โโโ _xcode.env
โย ย โโโ build
โโโ jsconfig.json
โโโ metro.config.js
โโโ mocker
โย ย โโโ index.js
โย ย โโโ user.mock.js
โโโ package.json
โโโ src
โโโ App.js
โโโ components
โโโ config.js
โโโ global.js
โโโ hooks
โโโ models
โโโ pages
โโโ routes
โโโ services
โโโ utils
As always, thanks to our amazing contributors!
Made with contributors.
This project is MIT licensed.