NPM, hosted at npmjs.com, is a repository for storing open-source libraries, frameworks, and packages that anyone can publish to, and anyone can download from. This has great packages in it like ReactJS, Okta, DataDog, Material, Luxon, and many, many more.
However, there’s also garbage in here. There are some really terrible NPM packages out there that shouldn’t exist. I don’t know if these were made as an April Fools joke or a learning “Hello World” type app, but they’re terrible. These packages are overkill for the functionality they provide, AND they’ve been used countless times! That’s the part that scares me: so many developers have pulled these packages down instead of using much easier, and lighter, JavaScript-native alternatives.
If you get one thing out of this post: Think about what you’re asking from a npm package, can you just do it yourself? At the end of the day it’s just JavaScript, if they can do it, you can do it.
If you’re the creator of one of these, I hope this doesn’t hurt your feelings… too much.
upper-case and lower-case
If you’re a developer, this should make you outraged. These are native functions in JavaScript, but alas, there are over 41.5 MILLION DOWNLOADS A WEEK, 160 MILLION DOWNLOADS A MONTH! If you use these libraries, just stop it. Please, stop.
is-windows
Initial thought might be “well this seems helpful” and I’m sure it is, but do you need a package for this? Take a few seconds and look at the code. Are you telling me you can’t include this one line of code in your project? Maybe development isn’t for you, along with the 20 million developers who download this weekly. How does this happen?
is-odd and is-even
These little packages tell you if a number is even or odd. Yea, that’s it. Apparently there are 700,000 developers a week who can’t figure this out.
true and false
That’s it, I quit being a developer. These little packages simply return a true
or a false
and have been downloaded nearly 2,000 times a week. Why…
none
Does literally nothing. According to its documentation, it’s fast! I really hope this is a joke, or a test for developers, and 1,000 of us failed, each week.
if
Who thought “how do I write a condition in node” and then installed a library for it? 611 developers a week have…
meaning-of-life
This one is interesting… No read me, no GitHub link, has over 550 downloads a week. I want to know what it does but I refuse to install it. Have you?
Not all is lost
If you’re learning, and installed one of these, not realizing a function is native to JavaScript, that’s okay. But now you know, and knowing is half the battle. The other half: doing. Go and clean up your code and remove these silly things. If you need help with an alternative, let me know, I’ll gladly share the right code for each.
Subscribe to my blog and get posts like this in your inbox. Share your email below, or follow me on Twitter.
Leave a Reply