react-scripts: command not found
I am currently trying to use create-react-app which uses three different packages: react, react-scripts and react-dom. I have installed create-react-app and then when I change into the directory and hit npm start
I get a react-scripts: command not found
. I've ran into a lot of problems with this. I can see react-scripts
is in my node_modules
folder but I keep getting command not found
when trying to run npm start
. I tried to delete and re-install all of my node_modules
but it didn't work. Anyone else having this issue?
✘ ✝ Node/toDoApp/my-test master± npm start
> [email protected] start /Users/jzilch/Desktop/Web
Projects/Node:Express/Node/toDoApp/my-test
> react-scripts start
sh: react-scripts: command not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] start: `react-scripts start`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely
additional logging output above.
Firstly Delete package-lock.json
file in your project folder.
And then install dependencies again by npm install
. That should solve this issue.
This usually happens because of a bad npm packages installation (using npm and yarn at the same time?). It can be desperating, but if you try these steps, it should work.
1st solution:
Remove node_modules
folder. At the project's root folder, run
> yarn
> yarn run start
2nd solution:
At the project's root folder, run
> yarn upgrade
> yarn
> yarn run start
Next time you want to add a dependency using create-react-app, I recommend you to use 'yarn add' instead of 'npm install'. (Source: https://github.com/facebook/create-react-app/issues/1155)
Delete the /node_modules
directory and the package-lock.json
file using the rm
command:
rm -rf node_modules
rm -rf package-lock.json
Install react-scripts using the following command:
npm install react-scripts
Install the dependencies using the following command:
npm install
Start the local server by running the following command:
npm run start
Note: If you are a Linux user then don't forget to add the sudo
command before npm
.
I use this in a dockerizer enviroment.
I already install locally in node_modules using package.json
.
so, I added this:
RUN npm install -g react-scripts
RUN npm install
That solved my confusing issue
As I was using yarn
, I had to run yarn add react-scripts
.