Like python, NodeJS also suffers from specific version requirements. Unlike python, Node’s popular package managers don’t clutter the filesystem, so the tools to organize projects are a bit simpler. That’s because the dependencies for an arbitrary project are installed to
node_modules, local to the root of the project.
Here is my setup (indentation represents nesting):
nodenv (children below are shims:) node (global version is 14.3.0 as of writing) npm (childen below are global binaries:) yarn (children below are global binaries:) gatsby npx yarn yarnpkg
nvm > nodenv 😤😤
yarn’s global bins aren’t shimmed!
True, but according to this issues thread, this shouldn’t really be a problem since the shebang
#!/usr/bin/env node selects the global Node version when installing global yarn packages anyways.