node.jsの依存ライブラリを整理してみた

nodejs Node.js
npm npm

Node.jsにどんなライブラリがあるか試行錯誤を繰り返した結果、
node_modulesがぐっちゃぐちゃになったので整理したメモ。

ライブラリを色々入れ過ぎて結局、本当に必要なライブラリはなんだったっけ?
となった場合に確認する方法。
あるいはfsライブラリに限界を感じて途方に暮れた後、fs-extraに光明を見出して
fsが要らなくなったのにpackage.jsonのdependenciesから消しても
node_modulesからは消えないので整理する方法。

環境

Mac OS X El Capitan 10.11.4
Node v6.2.2
npm 3.10.6

依存ライブラリの確認

npm ls --depth=0
してみる。

--depth=0 オプションを付けないと依存ライブラリが依存しているライブラリまで見えて
これはこれで面白いのだがまた別の話。

表示された依存ライブラリ中で extraneous が付いているライブラリが要確認。
node_modulesに存在するのにpackage.jsonのdependenciesに無いライブラリにextraneousが付く。

対応

extraneousが付くケースは2つ。

  1. 不要なライブラリ
    npm uninstall ライブラリ名
    でアンインストールする。

  2. 必要なライブラリだがpackage.jsonに追加されていない
    npm install ライブラリ名 --save
    でpackage.jsonに追加する。

対応後にnpm ls --depth=0をしてみてextraneousが無ければキレイになって気持ち良い。