React Native Infinity
A React Native Starter For All Platforms.
You can use the interactive tool in the docs to generate the CLI command you need, or simply use npx react-native-infinity init to use the CLI interactive tool.
- Multi-Platform - Choose any combination of 6 platforms to target (iOS, Android, Web, Electron, Windows, MacOS)
- Add Platform - Add another platform anytime with
- UI Library - Add cross-platform UI libraries (Material Bread, UI Kitten)
- Interactive GUI - Online GUI to select platforms and libraries to get started
- Interactive CLI - Select platforms and libraries by answers questions in your terminal
You can install the project globally or use
$ npm install react-native-infinity -g
$ npx react-native-infinity <command>
init <name> where
<name> is an optional paramter that indicates the name of the folder and app. Additional options are passed when using the generated GUI tool.
add-platform command adds a platform after project initialization. Pass in a single platform from those listed in the
npx react-native-infinity add-platform electron
npx react-native-infinity list lists all supported platforms with the name you pass into
This starter contains a bare bones configuration for rendering on each platform.
React Native separates application code into
src and platform configuration into
ios. React Native Infinity extends this idea to more platforms. All application code lives in
src while each platform
windows has it's own folder that contains configurations, including
webpack config for each platform.
React Native on the web is supported by react-native-web, please check the documentation to learn more.
npm run web
./web/webpack.config.js. Config sets up an alias for
Entry file is
npm run build-web
./web/webpack.config to build a production web build to
Electron with React requires two commands to run and uses react-native-web
npm run electron
Starts the Electron window using config
npm run server
Runs react in the electron window using config
Entry File is
npm run android
react-native run-android, read the React Native docs for more information
npm run ios
react-native run-ios, read the React Native docs for more information