早押しボタンweb

プロジェクトから不要なパッケージを削除する

開発が進むにつれて、以前は使っていたけれど現在は使っていないパッケージが package.json に残ってしまうことがあります。こうした不要な依存は、プロジェクトの肥大化やセキュリティリスクの原因になります。

このようなパッケージを整理するには、depcheck というツールを使うのが便利です。このツールで使われていないパッケージを確認し、npm prune を使って整理する方法を紹介します。

1. depcheckのインストールと実行

まず、depcheck をグローバルにインストールします。

1npm install -g depcheck

次に、プロジェクトのルートディレクトリで以下のコマンドを実行します。

1npx depcheck

すると、現在使われていない依存パッケージが一覧で表示されます。

1Unused dependencies:
2* lodash
3* moment
4
5Missing dependencies:
6* react-dom
7

この中の Unused dependencies に表示されているものが、コード上で使用されていないパッケージです。

ただし、動的な読み込みや一部のビルドツールにより検出されないケースもあるため、削除前に本当に不要か確認しましょう。

2. package.json から削除する

不要なパッケージが確認できたら、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

3. npm prune で整理する

package.json を編集しただけでは node_modules には影響がありません。不要なモジュールを削除するには、次のコマンドを実行します。

1npm prune

これで、package.json に存在しないパッケージが node_modules から削除されます。

4. 不要パッケージを削除するメリット

まとめ

npx depchecknpm prune を使うことで、プロジェクトの不要な依存関係を簡単に整理することができます。特にプロジェクトが長期化した場合は、定期的なチェックと整理を行うことで、品質の維持につながります。

記事一覧へ戻る