This comprehensive guide walks you through installing npm and mastering its command-line interface. We'll cover installing packages locally and globally, managing dependencies, and ensuring your project's security.
Node.js empowers server-side JavaScript development, built on the V8 JavaScript engine and written in C for speed. Initially designed for server applications, its use expanded to local task automation, spawning a rich ecosystem of tools (Grunt, Gulp, webpack) that revolutionized front-end development. npm is the key to managing these tools (or packages) within Node.js, simplifying installation and management.
This tutorial covers fundamental npm operations: local and global package installation, deletion, updating, version-specific installation, and dependency management using package.json
. For a visual learning experience, consider SitePoint Premium's free screencast: "What is npm and How Can I Use It?"
Before using npm, you must install Node.js.
Key Concepts:
-
Installation: npm is bundled with Node.js; download from the official site, verify installation using
npm --version
. -
Global vs. Local: Install packages globally (system-wide) or locally (per project), typically managed via
package.json
. - Updating npm: Regularly update npm for new features and improvements; OS-specific update commands apply.
-
Dependency Management:
package.json
efficiently handles project dependencies, ensuring consistent setups across environments usingpackage-lock.json
. -
Security: Use
npm audit
to detect vulnerabilities in project dependencies and apply recommended fixes. - npx: Execute npm packages without global installation, simplifying testing of new tools.
Installing npm with Node.js:
Download Node.js from the official Node.js download page. Installers are available for Windows and macOS, along with pre-compiled Linux binaries and source code. Linux users can also install via their package manager.
This tutorial uses a recent Long Term Support (LTS) version of Node.js. Consider using a Node version manager for easier version control.
Verify the installation:
which node node --version node //enter Node's REPL
Confirm npm installation:
which npm npm --version
Updating npm:
Update npm to the latest version (commands may vary slightly by OS):
Linux/macOS:
npm install -g npm@latest
Windows: Use the npm-windows-upgrade tool (requires elevated PowerShell):
which node node --version node //enter Node's REPL
Node Packaged Modules (Local vs. Global):
npm installs packages locally (in node_modules
within your project) or globally (system-wide). Avoid global installations in system directories due to potential permission issues; instead, configure a user-specific global location.
Changing the Global npm Package Location:
- Create a directory:
mkdir ~/.node_modules_global
- Configure npm:
npm config set prefix=$HOME/.node_modules_global
- Reinstall npm:
npm install npm@latest -g
- Update PATH: Add
export PATH="$HOME/.node_modules_global/bin:$PATH"
to your shell's configuration file (.bashrc
,.zshrc
, etc.) and restart your terminal.
Installing Packages (Global Mode):
Install a package globally (e.g., UglifyJS):
which npm npm --version
List globally installed packages:
npm install -g npm@latest
Installing Packages (Local Mode):
- Create a project directory and initialize
package.json
:npm init -y
- Install a local package (e.g., Underscore):
npm install underscore
This adds the package to package.json
's dependencies
section and creates a package-lock.json
file.
Managing Dependencies with package.json
:
package.json
lists project dependencies, ensuring consistent setups across environments. The package-lock.json
file guarantees exact dependency versions.
Uninstalling Local Packages:
Uninstall a package: npm uninstall underscore
Installing Specific Package Versions:
Install a specific version: npm install underscore@1.9.1
Updating Packages:
Check for updates: npm outdated
Update a package: npm update underscore
(or npm update
for all outdated packages)
Searching for Packages:
Search for packages: npm search mkdir
Re-installing Project Dependencies:
Remove node_modules
and reinstall: rm -rf node_modules && npm install
Managing npm's Cache:
Clear the cache: npm cache clean --force
Using npm audit
for Security:
Scan for vulnerabilities: npm audit
Fix vulnerabilities: npm audit fix
(or npm audit fix --force
to allow breaking changes)
npm Aliases:
-
npm i
:npm install
-
npm un
:npm uninstall
-
npm up
:npm update
-
npm ls
:npm list
Executing Packages with npx
:
Execute packages without global installation: npx http-server
Conclusion:
This guide provides a solid foundation for using npm. Explore further by comparing npm and Yarn, using Node Version Manager (nvm), hosting private npm packages, or learning about Deno's package management. npm's expanding role in front-end development makes it an essential tool for modern JavaScript developers.
FAQs (Included in original text): The FAQs section from the original text is already comprehensive and well-written; no changes are needed.
The above is the detailed content of How to Install npm, Master npm Commands & Use Packages. For more information, please follow other related articles on the PHP Chinese website!

The power of the JavaScript framework lies in simplifying development, improving user experience and application performance. When choosing a framework, consider: 1. Project size and complexity, 2. Team experience, 3. Ecosystem and community support.

Introduction I know you may find it strange, what exactly does JavaScript, C and browser have to do? They seem to be unrelated, but in fact, they play a very important role in modern web development. Today we will discuss the close connection between these three. Through this article, you will learn how JavaScript runs in the browser, the role of C in the browser engine, and how they work together to drive rendering and interaction of web pages. We all know the relationship between JavaScript and browser. JavaScript is the core language of front-end development. It runs directly in the browser, making web pages vivid and interesting. Have you ever wondered why JavaScr

Node.js excels at efficient I/O, largely thanks to streams. Streams process data incrementally, avoiding memory overload—ideal for large files, network tasks, and real-time applications. Combining streams with TypeScript's type safety creates a powe

The differences in performance and efficiency between Python and JavaScript are mainly reflected in: 1) As an interpreted language, Python runs slowly but has high development efficiency and is suitable for rapid prototype development; 2) JavaScript is limited to single thread in the browser, but multi-threading and asynchronous I/O can be used to improve performance in Node.js, and both have advantages in actual projects.

JavaScript originated in 1995 and was created by Brandon Ike, and realized the language into C. 1.C language provides high performance and system-level programming capabilities for JavaScript. 2. JavaScript's memory management and performance optimization rely on C language. 3. The cross-platform feature of C language helps JavaScript run efficiently on different operating systems.

JavaScript runs in browsers and Node.js environments and relies on the JavaScript engine to parse and execute code. 1) Generate abstract syntax tree (AST) in the parsing stage; 2) convert AST into bytecode or machine code in the compilation stage; 3) execute the compiled code in the execution stage.

The future trends of Python and JavaScript include: 1. Python will consolidate its position in the fields of scientific computing and AI, 2. JavaScript will promote the development of web technology, 3. Cross-platform development will become a hot topic, and 4. Performance optimization will be the focus. Both will continue to expand application scenarios in their respective fields and make more breakthroughs in performance.

Both Python and JavaScript's choices in development environments are important. 1) Python's development environment includes PyCharm, JupyterNotebook and Anaconda, which are suitable for data science and rapid prototyping. 2) The development environment of JavaScript includes Node.js, VSCode and Webpack, which are suitable for front-end and back-end development. Choosing the right tools according to project needs can improve development efficiency and project success rate.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

Atom editor mac version download
The most popular open source editor

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 English version
Recommended: Win version, supports code prompts!
