Node Package Manager
というパッケージマネージャー
ソフトウェア開発において必要な「部品」(ライブラリやフレームワークなど)を探して、インストールし、更新し、管理するためのツール。
パッケージマネージャーがなければ、必要なコードを自分で探してダウンロードし、正しい場所に配置し、バージョンを確認し、更新を手動で行う必要がある。
パッケージマネージャーはこれらの作業を自動化して、開発者がコードの作成に集中できるようにしてくれる。
必要なコードをインターネットから自動的に探してダウンロードします
例: npm install react でReactをプロジェクトに追加
パッケージAがパッケージBを必要とする場合、Bも自動的にインストールします
複雑な「部品の関係図」を自動的に理解して管理します
どのバージョンのパッケージを使用しているか記録します
「このプロジェクトではReact 18.2.0を使っています」という情報を保持
利用中のパッケージの新しいバージョンを確認できます
安全に更新するための仕組みを提供します
チームメンバー全員が同じ環境で開発できるよう情報を共有します
npm init - 新しいプロジェクトを初期化し、package.jsonファイルを作成npm install (または npm i) - package.jsonに記載された全ての依存関係をインストールnpm install パッケージ名 - 特定のパッケージをインストールnpm install パッケージ名@バージョン - 特定のバージョンをインストールnpm install パッケージ名 --save-dev (または -D) - 開発依存関係としてインストールnpm install -g パッケージ名 - グローバルにパッケージをインストール
ソフトウェア開発プロセスでのみ必要なパッケージやツールのことで、実際のアプリケーション本番環境では不要なもの。(例:ESLint, Prettier等)
特定のパッケージをコンピュータ全体で使えるようにインストールすること。
プロジェクトへのインストールならプロジェクトのnode_modules
フォルダ内に配置されるが、グローバルの場合はシステム全体の共有場所(例:/usr/local/lib/node_modules
)に配置される。
下記の場合に使う事が多い。
npm run スクリプト名 - package.jsonの"scripts"セクションで定義されたスクリプトを実行npm start - package.jsonで定義された"start"スクリプトを実行(省略形)npm test (または npm t) - テストスクリプトを実行
npm update - インストール済みのパッケージを更新npm uninstall パッケージ名 (または npm remove) - パッケージを削除npm list - インストールされたパッケージの一覧を表示npm outdated - 古くなったパッケージを表示npm audit - セキュリティ脆弱性をチェックnpm audit fix - セキュリティ脆弱性を自動修正
npm help - ヘルプを表示npm --version (または -v) - npmのバージョンを表示npm info パッケージ名 - パッケージの詳細情報を表示
npm run dev
とは何なのかpackage.json
内で定義されているdev
という名前のスクリプトを実行する。
例えば下記のような設定ならnext dev
が実行される。
{ "scripts": { "dev": "next dev", "build": "next build", "start": "next start" }}
ではnext dev
を直接実行するのと何が違うのか
next dev
を直接実行する場合npm run dev
を実行する場合package.json
ファイル内のscripts
セクションを参照するdev
に定義されたコマンド(通常はnext dev
)を実行するnode_modules/.bin
ディレクトリ内の実行ファイルが優先的に使用されるpackage.json
で定義された環境変数やフック(pre-scripts
やpost-scripts
)も実行するプロジェクト固有の設定を適用させ、チーム全体で一貫した環境するためにnpm run dev
が推奨される。
株式会社Global Design Factory - CEO