npm,yarn,package.jsonとは

この記事はMojirageアドベントカレンダーの2日目の記事です。
matatsuna.hatenablog.com

npm

www.npmjs.com
nodeを使うと便利になる的なことは前回軽く触れました。そのときに使うパッケージ(ライブラリ)をインストールするために使うのがnpmです。
npm自体もnodeで出来ています。
nodeをインストールするとnpmも自動でインストールされるはずです。
具体的な使い方はQiitaとか参考にしてほしいのですが、 npm コマンドでライブラリ関係のダウンロード、更新をするということです。
npmにはパッケージをグローバルインストールとローカルインストールする2つの方法があります。

グローバルインストール

PCのどこからも使える

ローカルインストール

コマンドを叩いたディレクトリで使える

基本的にローカルインストールすることをオススメします。
ただ、すぐにサーバーが立てられる、http-serverのようなものをグローバルインストールしておくと、便利です。

yarn

yarnpkg.com
基本的な機能はほとんど同じなんですが、npmよりも軽く賢いのがyarnです。
ガッツリ使ってはいないのですが、ちょっとだけコマンドの叩き方がnpmとは違うそうなので注意が必要です。

package.json

package.jsonは、nodeなどを使ったプロジェクト(プログラム)についての情報を書き込むファイルです。
npm init して、質問に答えて行くと作られます。
npmがライブラリをインストールするものと説明しましたが、インストールしたものの名前がpackage.jsonに自動的に書き込まれます。
githubからダウンロードしてきたプロジェクトにはライブラリは含まれていないので、 npm install してライブラリ復元のとき使われます。
また、作者情報やライセンス、実行コマンド一覧とかも書けるので使えるようになるとかなり便利です。
qiita.com
scriptsに書いた内容はnpm run hogeとかで実行できるので、長い引数をもってたり、覚えてられない実行コマンドとかを書いて保存しておくと便利です。
dockerのときにとても助かってます。