
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
Because I don't need your tests in my production!
Packages in npm are bloated with stuff which you will never ever use, like build files and different kinds of test data. Guys from npm provided us with .npmignore files, but seems like almost no one uses it. Please, stop publishing your development stuff to npm. If I would like to run your tests and start hacking on your project I will do git clone not npm install. Once our project has increased in size in 13Mb and this is just because of single test data file which was used by one of our dependencies (true story). Poor testing farm...
So:
npm then bloated dependencies make you unhappy.npm and e.g. TravisCI. Imagine how thousands of small useless files impacts installation time of your package.dmn ("dependency minifier" or "damn missing .npmignore" or "dmn is a meaningless name") - is a command line tool which will help you deal with bloated dependencies. It can clean your node_modules from stuff which you will never need. And it can gracefully generate .npmignore file for your project. Both operations are based on list of ignore targets. Send me a pull request If I missed something in this list.
$ npm install -g dmn
Usage: dmn <command(s)> [options]
Commands:
gen : generate (or add items to existing) .npmignore file
To keep item in release package just prepend it's
pattern with '!'.
clean : clean project's node_modules from useless clutter
Options:
-f, -force : don't ask for command confirmation
-l, -list : list files that will be deleted by "clean" command
Generate .npmignore for your project:
$ cd <to_your_project>
$ dmn gen --f
Or do this before publishing:
$ dmn gen --f && npm publish
Or even better:
$ dmn gen --f && git add .npmignore && git commit ...
Clean your project's dependencies:
$ cd <to_your_project>
$ dmn clean --f
Clean newly installed dependency:
$ npm install --save <new_dependency> && dmn clean --f
Install dependencies then clean them for cloned repo:
$ git clone https://github.com/<username>/<reponame>
$ cd <reponame> && npm install && dmn clean --f
If you have any questions, please feel free to create an issue here on github.
FAQs
Node package dependency cleaner and .npmignore file generator.
We found that dmn demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.