Yarn and node package manager (npm) are package managers for JavaScript. Package managers automate the process of installing, updating, and deleting software packages.
Developed by Facebook, released in 2016.
Developed by Isaac Z. Schlueter, released in 2010.
The Developers
Better in terms of speed as it pulls the packages from the servers in parallel.
Even though there has been a significant increase in performance in later versions, npm is still slower.
Performance
Better at version control. It ensures that the same package is installed throughout all devices so that issues do not arise due to different package versions being installed across multiple devices.
Did not support version control before version 5. Moreover, there are still some bugs in this feature that lead to inconsistent versions of the packages across devices.
Version control
Caches previously downloaded packages and allows offline downloads.
Versions 5 and above support offline downloads for
packages downloaded previously.