Yarn, like NPM, is a package manager to manage your front-end packages. When creating a Phoenix project you can’t specify whether to use NPM or Yarn. And it doesn’t look like there’s any plan to support this; see github comment.
Prior to NPM 6, Yarn had a richer feature set and was more performant. But with the update, it looks like NPM has caught up with Yarn. So why switch?
If you’re just starting out, NPM is a great choice. But if you’re used to Yarn or want to explore a new package manager, then here’s a quick tutorial on adding it to your Phoenix application.
Install Yarn
I installed Yarn on my Mac with Homebrew. For further installation instructions see the Yarn docs.
brew install yarn
Initialize Yarn
Navigate to the assets folder in your Phoenix app.
cd ~/<phoenixapp>/assets
yarn init
After running yarn init
you will be prompted for information on various items. The only prompt I filled out was for the entry point.
question entry point (index.js): app.js
You can open up package.json
and see the results of yarn init
. Feel free to edit these at a later time.
Generate Yarn.lock
Run the yarn
command to generate a yarn.lock
file.
cd ~/<phoenixapp>/assets
yarn
I recommend removing the package-lock.json
file since Yarn won’t be using it.
That’s it! You should now be ready to use Yarn to manage your front-end packages.
Top comments (0)