Which is Better? Expo CLI Tool or React Native CLI

07/12/2020Development,React NativeReact Native

Expo CLI Tool

Expo is a third-party service. It removes a lot of complexity, and provides lots of convenience & utility features.

In other words, It is a thin extra layer between your app and the vanilla React Native.

For detail, you can find the first step here “https://expo.io/learn“.

React Native CLI

You can do fine-grained control for raw React Native app. However, you need to setup/manage development environment manually…

It requires high skills and deep knowledge about developments.

Which is Better?

For beginners, definitely “Expo CLI Tool“. Because it’s so much more convenient!

Then, if you need the full flexibility for some reasons, you can switch to “React Native CLI" by “eject“.

How to Install Expo CLI Tool

Step 1. download Node.js.

Step 2. Get the command line tool.

After you install the Node.js, execute the following command to install the Expo cli.

npm install expo-cli --global

Step 3. Create a project.

Move to your appropriate directory where you want to create a project folder. Then execute the following command.

cd ./react_native
expo init my-new-project

Then, you are asked which template you use. Here, as an example, select “blank"

? Choose a template: (Use arrow keys)
----- Managed workflow -----
> blank a minimal app as clean as an empty canvas
blank (TypeScript) same as blank but with TypeScript configuration
tabs several example screens and tabs using react-navigation
----- Bare workflow -----
minimal bare and minimal, just the essentials to get you started
minimal (TypeScript) same as minimal but with TypeScript configuration

If the success message like below is displayed, your installation is completed.

 Your project is ready!

To run your project, navigate to the directory and run one of the following npm commands.

- cd my-new-project
- npm start # you can open iOS, Android, or web from here, or run them directly with the commands below.
- npm run android
- npm run ios # requires an iOS device or macOS for access to an iOS simulator
- npm run web

Next Step: How To Use Expo Cli Tool >>