react-native-template-re-route v0.4.1
re-start :globe_with_meridians: :iphone: :computer:
Aim of the project
- Target multiple platforms (Android, iOS, Web, WindowsUWP and ElectronmacOS, Linux, Windows) with react native' APIs and a single codebase.
- Follow best practices while doing the above.
- Cut out the time and effort it takes to setup the project (based on
create-react-app). - Achieve write once run everywhere with react-native (though react strictly says 'Learn once use anywhere').
- Mitigate git cloning or manual upgrading of boiler plates, which is possible because this project is a react-native template. :tada:
Structure of the project
- This project comprises of several templates that are curated keeping in mind the various use cases of initiating a new project. Based on your requirements and preferences, you can choose a templates that suits your you case the best.
Usage
Pre-requisites
- Node.js & npm
- react-native CLI (
npm install -g react-native-cli)
Install
- Create a new react-native project using
react-native-cliand specifyre-baseas a template:react-native init <Your Project Name> --template re-base - React Native don't support templates inheritance. If you want to use a
derived template like
re-duxorre-route, install them directly on top of the just created project. You'll probably get a warning about the project already exists, just say ityesto overwrite the needed files.react-native init <Your Project Name> --template re-dux react-native init <Your Project Name> --template re-route react-native init <Your Project Name> --template re-startre-starttemplate depend of bothre-routeandre-dux, be sure to install them first in that order. - Since
react-native-templatedoesn't support adding custom scripts topackage.json, exec./finishInstall.jsto finish the project configuration. - Your project should now be ready to build apps for the different platforms.
Run the project on a specific platform
Android/iOS
npm/yarn run android
npm/yarn run iosIn case of problems, this tutorial will help you to configure your environment.
Desktop (Electron)
npm/yarn run electronWeb
npm/yarn run webWindows
npm/yarn run windowsWindows platforms needs to have installed the Windows 10 SDK Build 14393 to be
able to be build. A certificate is needed to sign the binary, follow the
instructions
to create or update the sign certificate. After that, a pop-up window would
appear during the first time you exec the build process asking to install the
certificate you've just created, just accept it.
Build for production
Android
npm/yarn run android:releaseElectron
npm/yarn run electron:releaseIf you are running this on Linux or OSX, this will need you have wine 1.6
installed in your system because setting the Windows app icon makes usage
internally of the node-rcedit package.
iOS
npm/yarn run ios:releaseWeb
npm/yarn run web:releaseThis will build your production ready bundle
Windows
npm/yarn run windows:releaseSome very useful cross platform compatible libraries
- react-native-vector-icons
- axios
- react-router
- re-render (this is experimental and a WIP)
Progress
- support for web (react-native-web_improved)
- support for Windows (react-native-windows)
- Support for electron
- Compatibility with React 16
- Add Docs and FAQs
- Configure Travis and Greenkeeper
- Interactive CLI to create templates and components
Running demo on Web, Android, iOS, Windows(Universal) and Electron
Contributors
Thanks goes to these wonderful people (emoji key):
| Amogh Bantaπ» π¨ π π π€ β οΈ | JesΓΊs LeganΓ©s-Combarroπ» π€ π β οΈ π π | Ankit Popliπ π€ π | Christopher Heinπ π | DuncanMacWebπ» |
|---|
Full list of contributors can be found here.
Companies that contribute to re-start's development
LICENSE
MIT
