npm は Node.js の世界の標準パッケージ管理ツールで、基本的には Node.js向けです。
npm install は、Node.js(JavaScript)プロジェクトで必要な“部品(パッケージ)”を集めて、使える状態にするコマンドです。料理でいうと「レシピ(package.json)を見て、材料を買いそろえて台所(node_modules)に置く」イメージです。
npm install で起こること(超重要ポイント3つ)
1) 依存関係(dependencies)を入れる
プロジェクト内に package.json がある状態で
npm install
を実行すると、package.json(と package-lock.json)を見て、必要なパッケージをまとめて入れます。
- 入る場所:
node_modules/ - 何が入るか:プロジェクトが動くのに必要なライブラリ一式
2) package-lock.json を作る/更新する
package-lock.json は「今回入れた正確なバージョンの固定台帳」です。
- チーム開発や本番環境で「人によって入るバージョンが違う」事故を防ぐ
- できれば 消さない・手で編集しない(基本は自動生成に任せる)
3) package.json の scripts が使えるようになる
たとえば package.json に scripts があると、
npm run build
npm test
npm start
みたいなコマンドが動くようになります(内部的に依存パッケージが必要なことが多い)。
よく使うパターン
A. 依存を全部入れる(プロジェクトをセットアップ)
npm install
最初にやるやつです。
B. パッケージを追加で入れる
npm install axios
入れた上で、通常は package.json の dependencies に追加されます(npmの最近の挙動はこの形が基本)。
C. 開発専用として入れる(テスト・ビルド用など)
npm install -D eslint
devDependencies に入ります。
D. 特定バージョンで入れる
npm install react@18.2.0
E. グローバルに入れる(PC全体で使うコマンド系)
npm install -g typescript
※プロジェクトに閉じた依存は基本「ローカル(-gなし)」がおすすめです。
npm install したのに動かない…で多い原因
- Node.js のバージョン違い
→node -vで確認。プロジェクトの指定(.nvmrcやengines)があるかチェック。 - node_modules が壊れた/ズレた
よくある復旧手順: rm -rf node_modules package-lock.json
npm install - ネットワーク/社内プロキシ/証明書
会社PCだとここで詰まりがちです(エラー文があると切り分けできます)。
似てるコマンド:npm ci(CI向け・速い)
CI(GitHub Actions 等)では npm ci をよく使います。
package-lock.jsonに厳密に従って入れる(再現性が高い)- lockが無いと動かない、依存に差分があると失敗するなど“厳格”
