I actually just started working on a new Node.js project that could get very large, and the first question I asked myself was... Do I want each npm package to be in a separate repo or use a single repo with deeply nested but discrete npm packages?<p>I decided to go with a single repo with lots of discrete NPM packages using NPM private. This allows for things like:<p><pre><code>    const logger = require(&#x27;@org&#x2F;utils.logger&#x27;);
</code></pre>
Which to me reads beautifully. The real only gotcha is remembering to run npm publish and npm install often. There is quite a bit of duplicate packages installed though. For example, almost all packages I write require lodash, so it is installed n number of times instead of just once globally at the root. But... I&#x27;m ok with that.<p>If each package was inside its own repo that increases complexity and costs (lots of private repos in GitHub) and I don&#x27;t really see the benefit.