1日1%成長するブログ

毎日成長するために仕事/プライベートで得た学びをアウトプットするブログです

package.jsonのdevDependenciesとdependenciesの使い分け

devDependencies

  • ライブラリをdev(開発)する時に必要なライブラリを書く
  • 開発時のみに必要で実行時には入らないもの
- テストツール
- ビルドツール
- タスクランナー等
  • ぶっちゃけdependenciesに含まれていても動作はする。ただバンドルファイルの容量が増えたり用途がわからなくなったりするので分けた方がいい

dependencies

  • ユーザーとしてライブラリを使う時に必要なライブラリを書く

npm install

  • dependenciesとdevDependencies両方がインストールされる

本番環境でnpm installする時

  • dependenciesさえインストールされればいいはず
NODE_ENV=production npm install
  • NODE_ENVにproductionを指定すればdependenciesだけ入る

  • ちなみにHeorokuはデフォルトdependenciesだけインストールされる設定になっている