サマリー: このチュートリアルでは、npmについての説明と、npm CLIの使用方法について学習します。
npmの概要
NpmはNode Package Managerの略です。Node JavaScriptプラットフォームのパッケージマネージャーです。
Npmは世界最大のソフトウェアレジストリです。世界中のオープンソースの開発者は、Npmでソースコードを公開し、共有しています。
Npmは3つのコンポーネントで構成されています
- ウェブサイトを使用すると、サードパーティのパッケージを見つけて、プロファイルの設定、およびパッケージの管理ができます。
- ターミナルから実行され、Npmと対話できるコマンドラインインターフェイスまたはNpm CLI。
- レジストリは大規模な公開データベースです。
コンピュータでNpm CLIを見つけるには、ターミナルからnpm
コマンドを実行します。
npm
Code language: JavaScript (javascript)
たとえば、次のコマンドを実行すると、システムの現在のNpmバージョンが表示されます。
npm -v
Code language: JavaScript (javascript)
Npmで何ができるか
Npmを使用すると、レジストリから新しいパッケージをインストールできます。日常的にNpmで行うことの大半を占めます。
この他にも、Npmを使用して新しいノードパッケージを発見したり、公開したりできます。
package.json
一般的に、すべてのNpmプロジェクトには、ルートディレクトリにpackage.json
というファイルがあります。package.json
は、Npmがプロジェクトの識別や、依存関係の処理に使用するための重要な情報を格納する、プレーンテキストファイルです。
package.json
ファイルを作成するには、プロジェクトのルートディレクトリに移動し、次のコマンドを実行します
npm init
Code language: JavaScript (javascript)
npm init
コマンドを実行すると、プロジェクト情報の入力が求められます。次のような情報です。
- パッケージ名
- バージョン
- テストコマンド
- Gitリポジトリ
- キーワード
- 著者
- ライセンス
Return
またはEnter
キーを押すと、デフォルト値が使用され、次のプロンプトに移動します。
デフォルトオプションを使用する場合は、次のコマンドを使用します。
npm init --yes
Code language: JavaScript (javascript)
後で、package.json
内でデフォルト値を変更できます。
新しいパッケージのインストール
新しいパッケージをインストールするには、次のnpm install
コマンドを使用します。
npm install <package_name>
Code language: JavaScript (javascript)
このコマンドでは、npm install
キーワードの後にパッケージ名を入力します。
パッケージを探すには、Npmのウェブサイトにアクセスして検索します。
たとえば、express
パッケージをインストールする場合は、次のコマンドを実行できます。
npm install express
Code language: JavaScript (javascript)
express
は、Node用の高速なWebフレームワークです。
インストールが完了すると、プロジェクトのルート以下に/node_modules
という新しいディレクトリが作成されます。インストールされた新しいモジュールはすべて、このディレクトリに配置されます。
/node_modules
ディレクトリを展開すると、Npmがexpress
だけでなく、express
の依存関係、依存関係の依存関係など、すべてをインストールしていることが確認できます。
プロジェクトのルートでpackage.json
ファイルを開くと、dependencies
セクションも更新されており、express
パッケージが次のように含まれていることがわかります。
"dependencies": {
"express": "^4.17.1"
}
Code language: JavaScript (javascript)
一般的に、新しくインストールしたパッケージはdependencies
セクションにリストされます。この例では、依存関係にバージョン4.17.1のexpress
パッケージが含まれます。Npmはセマンティックバージョン指定に従っていることに注意してください。
入力を簡素化するために、npm install
コマンドの短縮版を使用できます。
npm i <package_name>
Code language: JavaScript (javascript)
このコマンドでは、i
は install
を表します。
パッケージを開発の依存関係としてインストールする
開発環境でのみ実行するパッケージをインストールしたい場合があります。
たとえば、morgan
パッケージなどのHTTPリクエストを記録するパッケージをインストールしたい場合があります。
これを行うには、次の構文で --save-dev
オプションを使用する npm install
コマンドを実行します。
npm install <package_name> --save-dev
Code language: JavaScript (javascript)
たとえば
npm install morgan --save-dev
Code language: JavaScript (javascript)
このコマンドは morgan
パッケージをダウンロードしてインストールします。さらに、package.json
ファイルに devDependencies
という新しいセクションが次のように追加されます。
"devDependencies": {
"morgan": "^1.10.0"
}
Code language: JavaScript (javascript)
基本的に、devDependencies
には開発中に使用するパッケージを含める必要があります。これらのパッケージは、アプリケーションを開発している間のみ必要です。
一方、dependencies
にはアプリケーションが依存するパッケージを含める必要があります。言い換えると、これらの dependencies
パッケージがなければ、アプリケーションは機能しません。
また、npm install
コマンドを実行して、dependencies
と devDependencies
セクションにリストされているすべてのパッケージをダウンロードしてインストールすることもできます
npm install
Code language: JavaScript (javascript)
パッケージをシステム全体にグローバルにインストールする
パッケージをシステム全体にグローバルにインストールするには、次のコマンドを使用します。
npm install <package_name> --global
Code language: JavaScript (javascript)
または簡単に言うと
npm i <package_name> -g
Code language: JavaScript (javascript)
通常、コマンドラインやシェルで使用する場合にパッケージをグローバルにインストールします。
アプリケーションに含めるパッケージが必要な場合は、ローカルにインストールする必要があります。
まとめ
- NpmはNode JavaScriptプラットフォームのパッケージマネージャーです。
- 新しいパッケージをインストールするには、
npm install <package_name>
を使用します。 - 新しいパッケージを開発の依存関係としてインストールするには、
npm install <package_name> --save-dev
を使用します。 - パッケージをグローバルにインストールするには、
npm install <package_name> -g
を使用します。