title: npm install is really slow every time
body: <p>when running <code>npm install --no-optional</code>, it takes around 3 mins every time to complete. It installs ~ 200MB of files. I would like to speed the build process, but I cannot find any ways to really speed it up.</p>
  
  <p>Doesn't <code>npm install</code> by default cache dependencies (like any other decent tool e.g. <code>maven</code>, <code>sbt</code> or <code>nuget</code>) by default? If yes, shouldn't it be much faster than that? If no, then WHY and how to work around that?</p>
  
  <p>I found npm-cache package, but it seems to .tar all the dependencies and when neither of them changes, npm-cache will reuse the tar file. The downside of this is that, whenever a small change in dependencies occurs, it won't be able to reuse the cache (from what I understand).</p>
  
  <p>Are there any nice resources on why this is slow and how to speed it up and how caching works with npm in general? Other tools that I have used (<code>sbt</code>, <code>maven</code>, <code>nuget</code>) are much faster, therefore my expectations are high for <code>npm</code> as well.</p>
  
  <p>Another option I looked into is <code>npm install -g</code>, but it seems not to solve any problems here, as it is <a href="https://nodejs.org/en/blog/npm/npm-1-0-global-vs-local-installation/" rel="nofollow noreferrer">meant to be used for installing some cli tools</a> like grunt, npm-cache and etc., as it adds them to a path. So this definitely doesn't solve the problem.</p>
  
  <pre><code>npm -v: 4.0.5
  node -v: 6.8.1
  </code></pre>