cli
React Native CLI
Command line tools that ship with react-native
in form of the @react-native-community/cli
package.
It exposes
react-native
binary, so you can callyarn react-native
ornpx react-native
directly from your project.
Note: CLI has been extracted from core react-native
as a part of “Lean Core” effort. Please read this blog post for more details.
Contents
- Compatibility
- Documentation
- About
- Creating a new React Native project
- Usage in an existing React Native project
- Updating the CLI
- Contributing
- Maintainers
- License
Compatibility
Our release cycle is independent of react-native
. We follow semver and here is the compatibility table:
@react-native-community/cli
react-native
^9.0.0
^0.70.0
^8.0.0
^0.69.0
^7.0.0
^0.68.0
^6.0.0
^0.65.0,^0.66.0,^0.67.0
^5.0.0
^0.64.0
^4.0.0
^0.62.0,^0.63.0
^3.0.0
^0.61.0
^2.0.0
^0.60.0
^1.0.0
^0.59.0
Documentation
- configuration
- commands
- plugins
- init
- autolinking
About
This monorepository contains tools and helpers for React Native projects in form of a Command Line Tool (or CLI). This CLI is used directly by the react-native
package and is not intended for use directly. We update it independently of React Native itself.
Creating a new React Native project
Run the following command in your terminal prompt:
npx react-native init MyApp
Usage in an existing React Native project
Once you’re inside an existing project, a local react-native
binary will be available for you to use. Feel free to use Yarn to call it directly.
Example running start
command in terminal:
yarn react-native start # or: npx react-native start
You can also add npm scripts to call it with whichever package manager you use:
{ "scripts": { "start": "react-native start" } }
Updating the CLI
React Native CLI is a dependency of react-native
, which makes it a transitive dependency of your project. It happens that you may be locked on a version without fixes for bugs that may affect you. Here’s how to get it sorted:
-
If you use lock files (
yarn.lock
orpackage-lock.json
) – find all the@react-native-community/cli
prefixed entries, remove them, runyarn install
/npm install
once again.
Here’s an example usingyarn.lock
. Notice how whole@react-native-community/cli
entries are removed. Make sure to delete all of them:diff --git a/yarn.lock b/yarn.lock index 073309f..0bb8c4b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -843,26 +843,6 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^13.0.0"
-"@react-native-community/cli-debugger-ui@^3.0.0":
- version “3.0.0”
- resolved “ https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-3.0.0.tgz#d01d08d1e5ddc1633d82c7d84d48fff07bd39416"
- integrity sha512-m3X+iWLsK/H7/b7PpbNO33eQayR/+M26la4ZbYe1KRke5Umg4PIWsvg21O8Tw4uJcY8LA5hsP+rBi/syBkBf0g==
- dependencies:
- serve-static “^1.13.1”
- version “3.1.2”
- resolved “ https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-3.1.2.tgz#313644fba81b5d673cc803009e1eddc930b9618c"
- integrity sha512-H30a00LLigsTh4eO0kc2YtaIkOJKrValWOU6n2VES3ZGS31qDx9GhZIwMCMcdzcSnypAyMAfauVatEmBSQZU7Q==
- dependencies:
- “@react-native-community/cli-tools” “^3.0.0”
- chalk “^2.4.2”
-
If you don’t use lock files – remove
node_modules
and runyarn install
/npm install
again. -
Run
yarn list --pattern @react-native-community/cli
ornpm list @react-native-community/cli
and verify you’re on the latest version.
After performing these steps you should be on the latest CLI version. Feel free to do it once in a while, because we release often.
Maintainers
Previously:
- Mike Grabowski (@grabbou) – Callstack
- Kacper Wiszczuk (@esemesek)
License
Everything inside this repository is MIT licensed.