As much as I love to sling code, I love that we live in a world where you can stand on the shoulders of giants and easily leverage other people’s hard work by way of Open Source libraries.
Simply referred to as “dependencies”, these little code gems can save a ton of time. Unfortunately though, especially with a larger code base with multiple contributors, these dependencies can stack up quick.
Not only do they stack up, eventually the day comes when a better library is brought into the fold, and the original dependency or dependencies stop being used entirely.
The typical scenario I’ve seen at different points in my career would be 2-3 of the same exact type of library installed, but only one of them is actually still in use.
For whatever reason, it never fails that it’s a CSV parsing library. Not sure why we can’t seem to agree on one CSV parser to rule them all out in Node.js land.
With these dependencies that aren’t being used still in the fold, build times grow increasingly longer as we’re installing code unnecessarily over and over and over.
Fortunately, like most problems you face in development, there’s another somebody or somebodies that have already run into the issue and have put the time and effort into concocting a solution.
npm dependencies, that solution is
depcheck, a handy little
library that will scan your code and identify any unused dependencies.
If you have a Node.js project handy, you can follow along at home.
depcheck you can use
npx within your project:
And that’s it!
npx will install
depcheck and run it for you.
If you’re lucky, the output of the command will be
No depcheck issue, but if
you have any unused dependencies, you’ll see output similar to this:
Unused dependencies * some-unused-dependency * some-other-unused-dependency Unused devDependencies * et-cetera-etc-cetera
As an added bonus,
depcheck will also identify any dependencies you are using
that aren’t explicitly listed in your
package.json file, which looks like
Missing dependencies * something-not-listed
Pretty handy and quick and easy to make the most of it. Bonus points awarded to
folks that take a minute to wire
depcheck up to automatically run these checks
on commit and/or push to make sure you’re always on top of your unused