Ways To Install Packages In NodeJs App

NPM library provides a lot of libraries that we can use in our projects. Now, in order to use them, we will have to install those packages in our project. There are two ways to install the packages. Let's check those out.
 
First Approach
 
The first way is to directly install the packages in our application, following the below steps:
 
Step 1: Open cmd in admin mode and reach to the root of your application.

Step 2: Now, run the command to install a particular package. E.g., for express package, run the command: npm install express --save.
 
The word "save", here, will make sure that the dependency is also added to the package.json file of the project. 
 
Second Approach
 
This method is more like a bulk package installation process and requires you to select what version of the package you need to install in your application. It is done in the following steps:
 
Step 1: Open the package.json file of your application. Under the "dependencies" section, write the package name along with its version, in the following format:
  1. "dependencies": {  
  2.    "express""~4.13.1",  
  3.      "mysql""^2.10.2"  
  4.  }  
Now, you must be noticing that we used "~" and "^" here. We will get back to the usage and differences between the two, later below
 
Step 2: Now, open cmd in admin mode. Reach to the directory of your application.
Step 3: Run the command: npm install.
This single command will install both the packages "express" and "mysql" in your application, in one go. 
 
Now, getting back to the difference between "~" and "^":
  1. When we use ~ (considering the above case here), the npm install  will install the highest minor version of the package, i.e. the highest version of 4.13.xx. Although, if there is 4.14 version available for this package, it will not install that.

  2. When we use ^  (considering the above case here), the npm install will install the most recent major version of the package i.e. if there is a 2.13.00 version is available for mysql, that would be installed. Although, if there is 3.0 version of mysql is available, that will not be installed.