1-3. npmとは何か

更新日:2025年12月7日

1-3. npmとは何かについて解説します。
基礎知識編

※画像は生成AIによるイメージです。

npm(Node Package Manager)は、JavaScriptの世界における「パッケージ管理システム」です。 ライブラリのインストール、更新、削除を簡単に行えるツールで、現代のJavaScript開発には欠かせません。

npmの基本概念

npmは3つの要素から構成されています:

  1. npmレジストリ:世界中のパッケージが登録されているデータベース
  2. npmウェブサイト:パッケージを検索・閲覧できるサイト
  3. npmコマンドラインツール:パッケージを管理するためのツール

パッケージとは

パッケージは「配布用にまとめられたコード」です。ライブラリ、フレームワーク、ツールなどが含まれます。 各パッケージには名前とバージョンがあり、依存関係も管理されています。

パッケージの例

「express」というパッケージをインストールすると、Webサーバーを構築するための機能がすべて手に入ります。

基本的なコマンド

コマンド 機能 使用例
npm init プロジェクトの初期化 package.jsonの作成
npm install パッケージのインストール npm install lodash
npm update パッケージの更新 npm update lodash
npm uninstall パッケージの削除 npm uninstall lodash

package.jsonファイル

package.jsonは「プロジェクトの設定書」です。 プロジェクトの情報と使用するパッケージのリストが記載されています。

{
  "name": "my-project",
  "version": "1.0.0",
  "description": "プロジェクトの説明",
  "dependencies": {
    "express": "^4.18.0",
    "lodash": "^4.17.21"
  },
  "devDependencies": {
    "webpack": "^5.75.0"
  }
}

依存関係の種類

dependencies
本番環境で必要なパッケージ。アプリケーションの動作に必須
devDependencies
開発時のみ必要なパッケージ。テストツールやビルドツールなど
peerDependencies
一緒に使うことを想定したパッケージ。プラグインなどで使用

node_modulesフォルダ

インストールしたパッケージは「node_modules」フォルダに保存されます。 このフォルダは巨大になることが多く、通常はバージョン管理から除外します。

  • 数千~数万のファイルが含まれることがある
  • .gitignoreでGit管理から除外する
  • package.jsonがあれば再現可能

バージョン管理

npmはセマンティックバージョニング(SemVer)を採用しています。

記号 意味
^ マイナーバージョンまで更新可 ^4.18.0 → 4.19.0はOK、5.0.0はNG
~ パッチバージョンまで更新可 ~4.18.0 → 4.18.1はOK、4.19.0はNG
なし 完全一致 4.18.0 → 4.18.0のみ

グローバルインストール

ツール系のパッケージは、システム全体で使えるようにグローバルインストールすることがあります。

# グローバルインストール
npm install -g typescript

# ローカルインストール(通常)
npm install lodash

npmの利点

  • 一元管理:すべてのパッケージを一つのファイルで管理
  • 自動解決:依存関係を自動的に解決
  • バージョン固定:package-lock.jsonで厳密なバージョン管理
  • スクリプト実行:npm scriptsで作業を自動化
  • 巨大なエコシステム:200万以上のパッケージが利用可能

まとめ

npmはJavaScript開発の中核を担うツールです。 パッケージの管理を自動化し、開発効率を大幅に向上させます。 次のページでは、CDNとnpmの使い分けについて学習します。

免責事項
本コンテンツは2025年12月時点の情報に基づいて作成されている。最新の情報については公式ドキュメントを参照されたい。