DEV Community

loading...
Cover image for Migrating from NPM to Yarn

Migrating from NPM to Yarn

sgolovine profile image Sunny Golovine ・1 min read

Say you have a project that uses NPM for dependency management. How would you convert that project to use Yarn?

For the longest time the way I did it was just deleting the package-lock.json and running yarn to generate a new lockfile. While this works well on small projects, dependency pinning is there for a reason and trying to do this on a larger project may land you in hot water. So how do you do it safely? It's simple:


yarn import

Enter fullscreen mode Exit fullscreen mode

That's it! When you run yarn import, yarn will read your package-lock.json and generate a yarn.lock file based on it. It's a much safer way to migrate from one package manager to the other.

If you enjoyed this post check out some of my other writing

Discussion (7)

pic
Editor guide
Collapse
angelomiranda profile image
angelo.miranda

npm is catching up nicely or has caught up with yarn already.

What is the advantage or use case of converting to yarn now?

Collapse
andreidascalu profile image
Andrei Dascalu

It has in terms of features. I have a proiect (fairly large scale) where migrating from npm 7.4 to yarn cut the build time in almost half.
I'm not an expert in the intricacies of either but given the pretty "out of the box" approach in both instances, I'll take the change (even if there was an optimization that could be done to configure npm better)

Collapse
lyrod profile image
Lyrod

I would like to know how many time you save with "pnpm" !

Thread Thread
andreidascalu profile image
Andrei Dascalu

By the way, I found this: reddit.com/r/learnjavascript/comme... - if you look at the last comment, someone did a benchmark of Yarn2 vs pnpm about 4 months ago, so it should be fairly relevant.

Collapse
lyrod profile image
Lyrod

pnpm is for me, the faster package manager. I use. I use it for all my open source project

Collapse
angelomiranda profile image
angelo.miranda

i see. that is significant change. i would see myself migrating as well. thanks.

Collapse
jentanbernardus profile image
Jentan Bernardus

That's a useful tip, thnx for sharing.