Open In App
Related Articles

Difference between npm i and npm ci in Node.js

Improve Article
Save Article
Like Article

The following difference covers how npm i and npm ci command are different from each other and their functioning. The npm which is called a node package manager which is used for managing modules needed for our application.

npm i: The npm i (or npm install) is used to install all dependencies or devDependencies from a package.json file.


npm install "package-name"
// OR
npm i "package-name"

npm ci: CI stands for clean install and npm ci is used to install all exact version dependencies or devDependencies from a package-lock.json file.


npm ci

Differences between npm i and npm ci are:


npm i

npm ci

1.  It installs a package and all its dependencies. It is generally used to install dependencies.
2. It may write to package.json or package-lock.json. It never writes to package.json or package-lock.json.
3. Individual dependencies can be added with this command. Individual dependencies cannot be added with this command.
4. It is slower in execution. It is faster in execution.
5. If any dependency is not in package-lock.json, This command will add it. If any dependencies are missing or have incompatible versions, then npm ci will throw an error.
6. If a node_modules is already present, This Command doesn’t change anything to it. If a node_modules is already present, it will be automatically removed before npm ci begins its install.
7. It can install global packages. It can not install global packages.
8. The npm i package-name is used to write to package.json to add or update dependencies. It can’t be used to write to package.json.
9. npm i may write to package-lock.json to lock version of some dependencies. It can’t write to package-lock.json.
10            .      Used during development after pulling changes that update the list of dependencies. Used for the deterministic, repeatable build.
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Last Updated : 11 Jul, 2022
Like Article
Save Article
Similar Reads
Related Tutorials