Does npx use yarn?

15,151

Solution 1

npx create-react-app executes create-react-app binary, and create-react-app uses yarn to create your project (if yarn is installed). that's why you can see yarn.lock and also why yarn-start works.

Difference between npx create-react-app and yarn create react-app

They both executes create-react-app binary. create-react-app is the one who decides whether it wants to create the project with yarn or not. to use npm in create-react-app, use --use-npm flag (no matter you execute create-react-app with npx or yarn or directly, you should set it if you want it to use npm .):

create-react-app my-project --use-npm

Solution 2

create-react-app uses yarn for the setup if it's installed.

So, if yarn is already installed in your system, then npx create-react-app my-app --template redux and yarn create react-app my-app --template redux would give you the same end-result.

And it is already installed in your system, that's why it has generated yarn.lock and not package.lock.

yarn.lock is generated to keep the exact version of the installed packages.
Share:
15,151

Related videos on Youtube

Vikram Ray
Author by

Vikram Ray

Updated on April 27, 2021

Comments

  • Vikram Ray
    Vikram Ray about 2 years

    Today I created a reactjs starting template with CRA using:

    npx create-react-app my-app --template redux
    

    This created two files in my project: package.json and yarn.lock.

    I am confused about why it worked after I cd in the project and ran yarn start even though I didn't initiate the project with yarn create react-app my-app.

    I have two questions:

    • Why it generated yarn.lock?
    • What is the difference between
      • npx create-react-app my-app --template redux and
      • yarn create react-app my-app --template redux considering that they have the same effect.
  • Vikram Ray
    Vikram Ray almost 3 years
    create-react-app uses yarn explains it.
  • informer
    informer about 1 year
    Sweet and Simple explaination.