I think the npm project should document best practices, like when to use &quot;*&quot; version, when to use npm-shrinkwrap, etc... to limit problems.<p>NPM is a very powerful tool. In fact, it&#x27;s our deploy tool: we run `npm install` on servers (private Sinopia npm repository) to deploy. But to do that, you must follow many many rules that are written nowhere.