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
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" - -"@react-native-community/cli-platform-android@^3.0.0": - 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:
License
Everything inside this repository is MIT licensed.