Hello all,
My company is looking into building a new app from scratch based on Next.js with a few modules on the side (batch jobs, utility services, etc.)
Our current monorepo has been started over 4 years ago with Yarn Classic + Lerna and I was wondering what is the current consensus for building a monorepo, considering that the landscape has evolved greatly since then (npm now supports workspaces, pnpm has gained in popularity, Yarn has been re-engineered and multiple build systems have been released)
I would greatly appreciate if you have some comparison between package managers and build systems you could link to.
We’re still using Yarn and Lerna on our projects at work. We’re about to start a fresh new build though and have been looking at NX for the new setup. From our PoCs it works a lot better. Lots less rebuilding and bootstrapping with it’s built-in caching. Looking forward to implementing it properly.
Still want to look into Yarn 2 and see if it works with it.
I took a look at NX, they seem to limit some features (like NX Agents) to their Cloud offering, don’t they?
They do. I haven’t tried out their cloud offering yet. Even without that though, I’ve found the builds running faster with just their change detection and caching systems.
I use yarn 4 plus turborepo and am very happy with my setup. You can see tybalt for a reasonably-sized project with my preferred monorepo setup.