Swiftorial Logo
Home
Swift Lessons
Matchups
CodeSnaps
Tutorials
Career
Resources

Introduction to NPM and Yarn

What is NPM?

NPM (Node Package Manager) is a package manager for the JavaScript programming language. It is the default package manager for the JavaScript runtime environment Node.js. NPM is used to install, share, and manage dependencies for projects.

Note: NPM is included when you install Node.js.

What is Yarn?

Yarn is a JavaScript package manager developed by Facebook. It aims to address some shortcomings of NPM, such as speed and security. Yarn uses a lockfile to ensure that the same dependencies are installed across all environments.

Tip: Yarn is designed for projects that require reliable and consistent installations.

NPM vs Yarn

Here are some key differences:

  • Yarn is faster than NPM due to parallel installation.
  • Yarn uses a lockfile for consistent installs, whereas NPM uses a package-lock.json.
  • Yarn has a better offline mode compared to NPM.

Installing NPM and Yarn

Follow these steps to install NPM and Yarn:

  1. Download and install Node.js (includes NPM).
  2. To install Yarn, run the following command:
  3. npm install --global yarn
  4. Verify the installations:
  5. npm -v
    yarn -v

Common Commands

Here are some frequently used commands for NPM and Yarn:

NPM Commands

  • npm init - Initialize a new project.
  • npm install [package] - Install a package.
  • npm uninstall [package] - Remove a package.

Yarn Commands

  • yarn init - Initialize a new project.
  • yarn add [package] - Install a package.
  • yarn remove [package] - Remove a package.

Best Practices

To make the most out of NPM and Yarn, follow these best practices:

  • Always use a package manager to manage dependencies.
  • Keep your package.json files organized.
  • Regularly update your dependencies.
  • Use a lockfile to ensure consistent installations.

FAQ

What is a package.json file?

The package.json file is a metadata file that contains information about your project, such as its name, version, description, and dependencies.

Can I use NPM and Yarn together?

It is not recommended to use both package managers in a single project as they manage dependencies differently and may cause conflicts.