Originally published on the Trilon Blog on Aug 7, 2019.
Whenever we work on a new project we need to run npm install, but how often do we think about the toll this takes on our hard-drive?
A single node_modules folder can take up anywhere from 200+ megabytes of space (sometimes 1GB+ !).
Now take a look at your github/ folder, or wherever else you're storing the majority of your projects, and you can start to see where some of your free hard-drive space has gone!
I recently tweeted about this, as it's something I use every few months and wanted to share with others who might have ran into the same situation themselves!
List all node_modules found in a Directory:
First, let's take a look at ALL the node_modules we have in a directory, before we actually start deleting them!
NOTE: Make sure you cd into a specific directory where most of your projects are. ie:
documentsordocuments/github.
Mac / Linux:
This command will print out each folder, and even show us how much space the folder is occupying ! Thanks to Rhymes for the tip!
$ cd documents
$ find . -name "node_modules" -type d -prune -print | xargs du -chs
--- Example output ---
1.0G ./Github/big-project/node_modules
225M ./Github/Trilon.io/node_modules
482M ./Github/Some_Demo/node_modules
1.7G total
Windows:
$ cd documents
$ FOR /d /r . %d in (node_modules) DO @IF EXIST "%d" echo %d"
This list will give you a good idea of just the sheer amount of projects you have installed on your machine!
Delete all node_modules found in a Directory:
NOTE: Use caution here, and make sure that you are in a directory where you're comfortable removing all the instances of node_modules, run the script above to see a full list of them all before deleting.
This script is actually very similar to the one above, but we're going to be utilizing rm -rf to completely delete them.
WARNING: This process is irreversible!
Mac / Linux:
$ cd documents
$ find . -name 'node_modules' -type d -prune -print -exec rm -rf '{}' \;
Windows:
$ cd documents
$ FOR /d /r . %d in (node_modules) DO @IF EXIST "%d" rm -rf "%d"
Powershell Users:
Get-ChildItem -Path "." -Include "node_modules" -Recurse -Directory | Remove-Item -Recurse -Force
There we have it!
For me personally, this typically clears out about 40-60GB from my hard-drive, but your mileage may vary!
In Conclusion
- Make sure to list all node_modules in a given directory BEFORE deleting them.
- Make sure to be cautious as this process is irreversible!
- Remember to
npm installon the projects you need to work on again. - Enjoy the free space! :)
Comment below I'd love to hear how much you saved!
Also, don't forget to check out the Trilon Blog for more in-depth articles!

Oldest comments (48)
Thanks!
With this you can see how much each
node_modulesdirectory occupies:It will also tell you the total at the end of the command
I like it !! Let me update the article with this in there. Definitely helpful π
Thanks Mark!
I've actually written a little program recently that does something like this. It cleans up generated files and dependency folders, in all projects that haven't been worked on in more than 30 days (so you don't have to run
yarn installagain on your current projects).Very cool! I like that it takes care of the -older- projects that haven't been touched in a while - I'll have to take it for a spin and give it a try!! Great work !
Perfect!
πππ
Much needed !!
How much space did you end up saving? π
12 GB of hard disk space :). Actually, I got an idea, if this can be written as a cronjob which runs for every 48hrs (something like that), and deletes "node_modules" for the projects which were untouched for some time. May be like more than a week. Most of the time I tend to clone a repo check something and never visit it again :X :D
Thatβd be amazing! Great idea π₯
We might have to look into making that real quick! Would be fairly simple with NestJS Cron jobs and it could be registered as a startup service on the OS startup maybe π€
The same happens to me, we do lots of open source & consulting so after a few weeks/months there are so many untouched projects, Iβm constantly out of HD space π
Exactly !! Let's start looking into this. I am new to NestJS, but it's worth a try which make life a little easier to manage :D
Iβll have a (hopefully) nice introduction blogpost to NestJS coming soon so keep an eye out!
Youβll β€οΈ NestJS once you get going with it !!
Thank you, so much π Would love to learn and built it π
@markpieszak you're a lifesaver.
Much appreciated @KP!
How much space did it end up clearing out for you??
About 1GB, but I have enough space (for now!) I can potentially "save" another 14GB if I delete all my node_modules folders. Thanks!
That's great!
Glad to hear it :)
Such a great idea! Thanks.
Appreciate the kind words ! Hope it cleared out plenty of space for you! π
awesome! thanks for sharing! β€
Of course! More related tips and tricks soon ! π
Fantastic Tip, thank you!
Saved .... 1.7gb
Glad to hear it!! :)
1.9GB
Excellent !! π₯π€
Ohh my God, 21gb!!
Since it wasn't mentioned in the article: npm tools such as pnpm (by @zkochan ) and yarn in PnP mode (or the upcoming Yarn v2) will keep a single copy of (each version of) a package you use across all your projects and just link them locally, saving you a ton of space without having to worry about deleting old npm_modules folders. PNPM also does a lot of cool other stuff, not my product, but I recommend it without reservation.
Great idea! Iβll have to do add notes about pnpm in there for folks to use in the future! Thanks for reminding me ππ
This is very handy! I run into storage issues on my laptop all the time.
Today I cleared 697M in node_module folders.
ππππΈ