The React Native CLI Tool is a command-line interface (CLI) utility designed to streamline the process of setting up and managing React Native projects. It provides commands for project initialization, library installation, folder structure setup, and more.
npm i react-native-sk
Once linked, you can use the CLI tool with the rn-cli
command.
Creates a new React Native project.
Options:
-v <version>
: Specify a custom version of React Native.
Example:
rn-cli init MyProject
# or with a specific React Native version
rn-cli init MyProject -v 0.64.0
Installs libraries listed in libraries.json
.
Example:
rn-cli install-libs
Updates the version of a library in libraries.json
by selecting it from a list.
Example:
rn-cli update-lib
Updates library versions from a custom JSON file.
Example:
rn-cli update-libs-from-file path/to/custom-libraries.json
Creates the initial folder structure for the project.
Example:
rn-cli init-structure
Copies babel.config.js
to the project root to enable absolute paths.
Example:
rn-cli absolute-paths
Sets up the project with essential configurations and files, including Redux store, navigation, and theming files.
Example:
rn-cli setup-app
Creates a new navigation stack.
Example:
rn-cli create-stack
Creates a new screen with the necessary configuration.
Example:
rn-cli create-screen
If you want to develop or contribute to this project:
-
Clone the repository:
git clone https://github.com/hossein92/react-native-starter-kit.git cd react-native-starter-kit
-
Install dependencies:
npm install
-
Link the CLI tool locally:
npm link
-
Restart the CLI tool after making changes:
npm run restart
The CLI tool operates on the following file structure within the project:
project-root/
├── src/
├── assets/
├── components/
├── navigation/
├── screens/
├── store/
├── types/
└── utils/
├── hooks/
├── common/
├── responsive/
├── theme/
├── languages/
├── services/
└── navigationRef/
This project is licensed under the MIT License.
Hossein Yousefi
This documentation provides a detailed guide on using and contributing to the CLI tool, including installation steps, command descriptions, and file structure.