Installing Node.js and NPM on Your Local Machine Print

  • 0

πŸš€ Node.js and NPM (Node Package Manager) are essential tools for modern JavaScript development. Node.js enables server-side scripting in JavaScript, while NPM helps manage your project's dependencies. This guide will walk you through installing, updating, and uninstalling Node.js and NPM on Windows, macOS, and Linux.


πŸ“Œ What Are Node.js and NPM?

Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. It allows you to run JavaScript code outside of the browser, making it popular for building scalable server-side applications.

NPM (Node Package Manager) is the default package manager that comes with Node.js, providing: βœ… A command-line client for installing and managing packages.
βœ… A large repository of public and private JavaScript packages (npm registry).


βš™οΈ Prerequisites

πŸ”Ή Basic command-line interface (CLI) knowledge is helpful.
πŸ”Ή Familiarity with JavaScript (optional but useful).


πŸ”§ Installing Node.js and NPM

πŸ–₯️ Windows Installation

Option A: Direct Download

1️⃣ Go to the official Node.js download page.
2️⃣ Select either the 64-bit or 32-bit Windows Installer (.msi) based on your system.
3️⃣ Run the downloaded file and follow the prompts in the Node.js Setup Wizard.

Option B: Using a Package Manager

🍫 Chocolatey (For Admin users)

choco install nodejs

πŸ₯„ Scoop (For Non-Admin users)

scoop install nodejs

🍏 macOS Installation

Option A: Direct Download

1️⃣ Visit the official Node.js download page.
2️⃣ Download the macOS Installer (.pkg).
3️⃣ Run the .pkg file and follow the installation wizard.

Option B: Using Homebrew

brew install node

🐧 Linux Installation

Option A: Using Distribution's Package Manager

🟒 Debian/Ubuntu

sudo apt update && sudo apt install nodejs npm

πŸ”΄ Fedora/RHEL/CentOS

sudo dnf update && sudo dnf install nodejs npm

Option B: Using NodeSource (For Latest Versions)

curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs

(Replace setup_18.x with setup_16.x or setup_20.x as needed.)


βœ… Verifying Installation

Check if Node.js and NPM are installed correctly:

node -v  # Outputs Node.js version\ nnpm -v   # Outputs NPM version

πŸ”„ Managing Multiple Node.js Versions

πŸ“Œ Use NVM (Node Version Manager) for macOS/Linux or nvm-windows to manage multiple Node.js versions.

nvm install 18  # Installs Node.js v18
nvm use 18      # Switch to Node.js v18

⏫ Updating Node.js and NPM

πŸ–₯️ Windows

Node.js - Download and install the latest version from Node.js official site.
NPM - Run:

npm install npm@latest -g

🍏 macOS

Node.js (via Homebrew):

brew update && brew upgrade node

NPM:

npm install npm@latest -g

🐧 Linux

Debian/Ubuntu:

sudo apt update && sudo apt upgrade nodejs
npm install npm@latest -g

Fedora/RHEL/CentOS:

sudo dnf update && sudo dnf upgrade nodejs
npm install npm@latest -g

❌ Uninstalling Node.js and NPM

πŸ–₯️ Windows

1️⃣ Open Add or Remove Programs in the Control Panel.
2️⃣ Locate Node.js and click Uninstall.

🍏 macOS

πŸ“Œ If installed via .pkg file:

sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/npm*

πŸ“Œ If installed via Homebrew:

brew uninstall node

🐧 Linux

🟒 Debian/Ubuntu

sudo apt remove nodejs

πŸ”΄ Fedora/RHEL/CentOS

sudo dnf remove nodejs

πŸ“Œ NPM (All distros):

npm uninstall npm -g

Advanced NPM (Node Package Manager) Features & Usage

NPM is more than just a package manager--it provides powerful tools for handling dependencies, managing scripts, and optimizing workflows for advanced JavaScript development.

πŸ“Œ 1. Managing Dependencies Efficiently

βœ… Semantic Versioning (SemVer): NPM follows SemVer to specify package versions, ensuring compatibility and stability.

  • ^1.2.3 β†’ Updates within the same major version.

  • ~1.2.3 β†’ Updates within the same minor version.

  • 1.2.3 β†’ Installs the exact version.

βœ… Installing Development vs. Production Dependencies:

npm install lodash --save      # Adds to dependencies (default)
npm install eslint --save-dev  # Adds to devDependencies
  • dependencies are required for production.

  • devDependencies are only needed for development.

βœ… Locking Dependencies with package-lock.json: Ensures consistent installs across environments.

npm ci  # Installs exact versions from package-lock.json

⚑ 2. Automating Tasks with NPM Scripts

NPM allows you to define and run custom scripts in package.json:

"scripts": {
  "start": "node index.js",
  "dev": "nodemon index.js",
  "build": "webpack --mode production",
  "test": "jest"
}

Run a script with:

npm run dev

For predefined scripts (start, test), simply use:

npm start
npm test

πŸ“¦ 3. Global vs. Local Packages

βœ… Installing Global Packages: Use -g to install tools globally, accessible system-wide:

npm install -g nodemon

Check globally installed packages:

npm list -g --depth=0

βœ… Using npx for Temporary Global Packages: npx runs CLI tools without a global install:

npx create-react-app my-app

🌍 4. Publishing and Managing Private Packages

βœ… Publishing a Package to npm Registry:

npm login   # Authenticate to npm
npm publish # Upload package

βœ… Managing Scoped Packages for Private Projects:

npm install @my-org/my-package --save

πŸ”’ Private packages require an npm organization or a paid plan.


πŸ” 5. Performance Optimization & Troubleshooting

βœ… Speeding Up Installs: Use cache for faster package retrieval:

npm cache clean --force
npm install --prefer-offline

βœ… Debugging & Diagnosing Issues:

npm doctor   # Checks system for known issues
npm audit    # Scans dependencies for security vulnerabilities
npm outdated # Lists outdated dependencies

πŸš€ Going Beyond: MERN Stack & MongoDB

Once Node.js and NPM are installed, you can explore: βœ… MongoDB for database management.
βœ… Express.js & React for the MERN (MongoDB, Express, React, Node.js) stack.
βœ… Building full-stack applications with modern JavaScript frameworks.

πŸ”— Read more: Advanced MERN Stack Manual


πŸŽ‰ Conclusion

🎊 Congratulations! You've successfully installed, updated, and uninstalled Node.js and NPM. Now, you can start building robust JavaScript applications, manage dependencies efficiently, and stay ahead in modern web development. πŸš€πŸ’‘

πŸ”Ή Tip: Stay updated by checking the official Node.js documentation for more insights and troubleshooting tips.

πŸ‘¨β€πŸ’» Happy Coding! 🎯


Was this answer helpful?

« Back