When to use shrinkwrap, npm-lockdown, or npm-seal
<p>I'm coming from a background much more familiar with <code>composer</code>.  I'm getting <code>gulp</code> (etc) going for the build processes and learning <code>node</code> and how to use <code>npm</code> as I go.</p>

<p>It's very odd (again, coming from a <code>composer</code> background) that a <code>composer.lock</code>-like manifest is not included by default.  Having said that, I've been reading documentation on [shrinkwrap], [npm-lockdown], and [npm-seal].  ...and the more documentation I read, the more confused I become as to which I should be choosing (everyone thinks their way is the best way).  One of the issues I notice is that <code>npm-seal</code> hasn't changed in 4 years and <code>npm-lockdown</code> in 8 months -- this all leads me to wonder if this because it's not needed with the newest version of <code>npm</code>...</p>

<ol>
<li>What are the benefits / drawbacks of each?</li>
<li>In what cases would I use one over another in Project A, but use a different one in Project B?</li>
<li>How will each impact our development workflow?</li>
</ol>

<p>PS: Brownie points if you include the most basic implementation example for each. ;)</p>