開発が進むにつれて、以前は使っていたけれど現在は使っていないパッケージが package.json
に残ってしまうことがあります。こうした不要な依存は、プロジェクトの肥大化やセキュリティリスクの原因になります。
このようなパッケージを整理するには、depcheck
というツールを使うのが便利です。このツールで使われていないパッケージを確認し、npm prune
を使って整理する方法を紹介します。
まず、depcheck
をグローバルにインストールします。
1npm install -g depcheck
次に、プロジェクトのルートディレクトリで以下のコマンドを実行します。
1npx depcheck
すると、現在使われていない依存パッケージが一覧で表示されます。
1Unused dependencies:
2* lodash
3* moment
4
5Missing dependencies:
6* react-dom
7
この中の Unused dependencies
に表示されているものが、コード上で使用されていないパッケージです。
ただし、動的な読み込みや一部のビルドツールにより検出されないケースもあるため、削除前に本当に不要か確認しましょう。
不要なパッケージが確認できたら、package.json
を開き、該当のパッケージを dependencies
または devDependencies
から削除します。
1{
2 "dependencies": {
3 "lodash": "^4.17.21",
4 "axios": "^1.5.0"
5 }
6}
7
上記の例では、lodash
を削除する場合、次のように編集します。
1{
2 "dependencies": {
3 "axios": "^1.5.0"
4 }
5}
6
package.json
を編集しただけでは node_modules
には影響がありません。不要なモジュールを削除するには、次のコマンドを実行します。
1npm prune
これで、package.json
に存在しないパッケージが node_modules
から削除されます。
node_modules
のサイズが減り、環境構築も軽くなります。npx depcheck
と npm prune
を使うことで、プロジェクトの不要な依存関係を簡単に整理することができます。特にプロジェクトが長期化した場合は、定期的なチェックと整理を行うことで、品質の維持につながります。