Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

651
Views
the difference between nx and Lerna ? (monorepos)

hello i'm in new in monorepos world and i'm now searching about different monorepos tools and i found two intersting tools Nx(nrwl) and lerna but i didn't understand the real differnce between these two tools so any help and thanks

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Although both are great tools to work with mono repo, they're quite different in their purpose.

Differences

Lerna is focused on linking multiple packages from the same project and managing npm publishing, and that's about it.

Nx is more focused on managing development workflow for multiple packages. It means it can scaffold packages, and for every package, you can define configurations on how to run and build them, in a similar manner to Webpack.

Nx can also work to spawn multiple processes at once. For example: run frontend and backend at the same time, without the need to open two different terminals. Similar to docker-compose.

Where they thrive

Lerna fits better for open source projects with multiple packages (because you can easily publish your packages).

Nx fits better for handling complex workflows with multiple packages.

How to choose

  • If you don't intend to publish your packages, Nx might be a better fit.
  • If you do intend to publish then, but you don't have a complex workflow, Lerna is definitely the way to go.
  • If you want both (publish and complex workflow), neither one seems great, but you should probably choose Nx, and manage the publishing manually. Or, maybe, use Lerna and configure the workflow manually with Webpack.

Someone can wonder if you could choose both, but I don't think they can work well together. At the time I'm writing this, Nx doesn't seem to care about being compatible with Lerna, and it Nx still lacks support for easy publishing.

An important disclaimer about terminology

  • I used the name "package" here because "package" is what you can publish on the internet (for example, in the NPM - Node Package Manager).
  • Lerna uses the name "project" as the wrapper folder of all your packages. Usually, a git repository is a "Lerna project" with several "Lerna packages".
  • Nx uses the name "project" to designate what Lerna calls "packages", and uses the name "workspace" to designate what Lerna calls "project" (i.e., the wrapper folder which holds all the projects).
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!