https://zenn.dev/nozomi_iida/articles/setup-semantic-release

先日仕事でパッケージを作っていて、semantic-releaseを知って感動したので記事にすることにしました。

まず、semantic-releaseの良いところは

セットアップ

では、早速プロジェクトを作って見ましょう 今回は究極にシンプルなcliを作ります 今回はsayHelloとコマンドを叩いたらHello!と返ってくるcliを作ります

こちらの記事を参考に作りました

  1. ファイルを作成する
mkdir semantic-release-tutorial
npm init -y
mkdir lib
touch lib/cli.js

  1. 実行ファイルの作成
module.exports = () => {
  console.log("Hello!")
}

  1. コマンドとファイルのマッピング
{
  // ...
  "bin": {
    "sayHello": "bin/cli.js"
  },
  // ...
}

コマンドとファイルのマッピングはbinフィールドでします

mkdir bin
touch bin/cli.js

#! /usr/bin/env nodeはnodeの環境を作るためにあります。 ためしにcommand lineで/usr/bin/env nodeと実行してみてください nodeが起動するはずです 詳細はこちらを見てみてください

  1. npm linkを使って手元で試せるようにします npm linkを使うとグローバルなパッケージがインストールされる場所にシンボリックリンクが作られます

これでコマンドラインでsayHelloとうつとHello!と返ってくるはずです