Most people who use npm use it to install packages that their applications depend one, known familiarly as
dependencies
. What a lot of people don't know is that there's actually a vibrant array of different dependency
types (ok, fine, just 5ish) that can help you better serve yourself, as either an application or package author,
as well as the users of your package.
Before now it was a little tricky to learn what those dependency types are, what differentiates them, and why you'd want to use them. This article will hopefully make that a bit more clear.