Works by

Ren's blog

@rennnosuke_rk 技術ブログです

【Yarn】Yarnをインストールする

Yarnとは

f:id:rennnosukesann:20180616080607p:plain:w300

YarnはFacebookが開発したパッケージマネージャです。Yarnは、Nodel.js上で用いられるパッケージマネージャであるnpmを代替します。

yarnpkg.com

前回の記事でも触れましたが、npmは昨今のWeb開発では頻繁に用いられています。一方で、npmはパッケージインストール時のエラーに悩まさえることが少なくありません。

またFacebook曰く、npm自体、現行の企業のアプリ開発業務の規模に耐えられなくなりつつあるようです。

そこでFacebookは新しいパッケージマネージャとしてのYarnを開発しました。Yarnはnpmにない新しい機能・規模感・安定性を提供するパッケージマネージャとして、少しずつ広まりつつあるようです。

今回はYarnを実際にインストールし、その機能を見ていきます。

Yarnの特徴

オフラインインストール

パッケージがダウンロード済みの場合、何度でもインストールできます。ローカルにパッケージがキャッシュされます。

npmと環境を共存できる

npmと同じnode_modules内でパッケージを管理でき、package.jsonで依存関係の管理も行うので、npmからの移行が簡単です。

高速

前述のオフラインインストールに加え、Yarnはインストール時のリクエストを効率的にキューイングすることでネットワークパフォーマンスの向上も達成しているようです。

Usage

Yarnのインストール

環境はMac OS X High Sierra 10.13.4 です。

ドキュメントにもある通り、brewまたはMacProtsでインストールできます。

# brew
$ brew install yarn
# MacPorts
$ sudo port install yarn

YarnをNodeなしでインストールできます。YarnはデフォルトでNodeとともにインストールされます。

$ brew install yarn --without-node

これでOKです!

Yarnを使ってプロジェクトを作成

結論を言ってしまうと、npmと使い方はほぼ全て同じです!

プロジェクト初期化はyarnコマンドで実行できます。yarn initでも可能です。

$ yarn
yarn install v1.7.0
info No lockfile found.
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
[4/4] 📃  Building fresh packages...
success Saved lockfile.
✨  Done in 0.08s.

yarn addで依存関係を追加できます。

$ yarn add [package] --dev
$ yarn add [package] --peer
$ yarn add [package] --optional

追加した依存関係をインストールしましょう!

$ yarn install

yarn install [package]で依存関係の追加を行わずにパッケージのインストールができます!

$ yarn install [package]

依存関係を削除するには、yarn remove [package]を使います。

$ yarn remove [package]

インストールしたパケージのまたアンインストールは下記で可能です。

$ yarn uninstall [package]

npmと全く一緒で乗り換え楽勝でした。

参考

yarnpkg.com

jp.techcrunch.com