node_modules
npmなどのパッケージマネージャが、依存パッケージを実際に展開して配置するフォルダです。
node_modulesディレクトリ内のモジュールは、Node.jsのrequire()/import解決アルゴリズムの探索対象になるため、実行時にコードを読み込めます。
生成タイミング
インストール方法 | 配置パス | 用途 |
npm install (プロジェクト直下 | <プロジェクト>/node_modules | ローカル依存。アプリ実行・開発ビルド時に参照。 |
npm install -g | Unix: {prefix}/lib/node_modules | グローバル依存。CLI ツールや複数プロジェクト共用コマンド。 |
中に何が入るか
項目 | 説明 |
<package>/ | それぞれの依存パッケージ本体(package.json , JS/TS, 型定義, README など) |
@scope/<package>/ | スコープ付きパッケージ用のサブディレクトリ(例 @nestjs/common ) |
.bin/ | npm run や CLI から呼ばれる実行ファイルのシンボリックリンク群 |
.package-lock.json | npm v7+ が内部キャッシュとして使うロック情報 — 同期に成功しているかの判定に利用 |
スコープ付きパッケージの代表的なスコープ
スコープ | 代表的な用途・パッケージ |
@types | 型定義(@types/node , @types/react …) |
@nestjs | NestJS本体とサブモジュール |
@babel | Babelコンパイラ関連 |
スコープによって、ユーザ名や組織名に紐づく名前空間で、同名パッケージの衝突を避けられます。