▲ | threetonesun 5 days ago | |||||||||||||||||||||||||||||||
npm workspaces and npm scripts will get you further than you might think. Plenty of people got along fine with Lerna, which didn't do much more than that, for years. I will say, I was always turned off by NX's core proposition when it launched, and more turned off by whatever they're selling as a CI/CD solution these days, but if it works for you, it works for you. | ||||||||||||||||||||||||||||||||
▲ | crabmusket 5 days ago | parent | next [-] | |||||||||||||||||||||||||||||||
I'd recommend pnpm over npm for monorepos. Forcing you to be explicit about each package's dependencies is good. I found npm's workspace features lacking in comparison and sparsely documented. It was also hard to find advice on the internet. I got the sense nobody was using npm workspaces for anything other than beginner articles. | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||
▲ | littlecranky67 5 days ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||
Killer feature of NX is its build cache and the ability to operate on the git staged files. It takes a couple of minutes to build our entire repo on an M4 Pro. NX caches the builds of all libs and will only rebuild those that are affected. Same holds true for linting, prettier, tests etc. Any solution that just executes full builds would be a no-starter for all use cases. | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||
▲ | littlecranky67 5 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||
I've burried npm years ago, we are happily using yarn (v4 currently) in that project. Which also means, even if we were affected by the malware, noboday uses the .npmrc (we have a .yarnrc.yml instead) :) |