I'll admit I'm not a user of yarn, but here's my understanding of the two:
Homebrew is a CLI tool and package manager for Mac. The packages it typically has available for installation are usually to be ran on MacOS directly, either via the command line or through other means, e.g. a plugin or service for another app.
Yarn is also a CLI tool and package manager, however it's not specifically for running on MacOS: it's purpose is to basically replace NPM (Node Package Manager) as a "better" package manager for Node JS projects. You'll typically only see packages available through NPM that are only to be ran inside Node JS environments.
In my opinion, Homebrew is amazing and provides a super easy way to obtain and update useful packages/apps that are available. Homebrew is the first thing I install on new Macs.
And as for Yarn, I personally feel NPM has improved a lot on its previous faults and is generally a lot faster and robust than it used to be, and it's bundled already with Node JS, so is mighty convenient to simply use as-is in Node projects.
Aaron Cooper
UK Software Engineer in Singapore
I'll admit I'm not a user of yarn, but here's my understanding of the two:
Homebrew is a CLI tool and package manager for Mac. The packages it typically has available for installation are usually to be ran on MacOS directly, either via the command line or through other means, e.g. a plugin or service for another app.
Yarn is also a CLI tool and package manager, however it's not specifically for running on MacOS: it's purpose is to basically replace NPM (Node Package Manager) as a "better" package manager for Node JS projects. You'll typically only see packages available through NPM that are only to be ran inside Node JS environments.
In my opinion, Homebrew is amazing and provides a super easy way to obtain and update useful packages/apps that are available. Homebrew is the first thing I install on new Macs.
And as for Yarn, I personally feel NPM has improved a lot on its previous faults and is generally a lot faster and robust than it used to be, and it's bundled already with Node JS, so is mighty convenient to simply use as-is in Node projects.