> don't need to go on a bunch of side missions every time i run npm install
Lol what a great way to describe what running a simple "npm install" entails.
Try doing this on a 5 year old project. You'll very likely end up in dependency hell.
There is a solution though - use of nvm and .nvmrc (to control the version of node and npm that you use), and use of npm ci (which installs packages as they were at the time, rather than installing newer versions than specified in package-lock.json (because too many devs rarely ever pin versions) instead of npm install / npm i).
nvm (Node Version manager): https://github.com/nvm-sh/nvm npm ci: https://docs.npmjs.com/cli/v6/commands/npm-ci