初めてnpmを公開した話
はじめに
現在僕はフィヨルドブートキャンプというところでプログラミングを勉強中なのですが、JavaScriptのカリキュラムの一環で、自作のnpmを公開するというものがあり、初めての公開だったのでその備忘録。
作ったnpm
「郵便番号を入力するとその住所が表示される」というごく簡単なCLIのnpmを作りました。
npmを公開するまで
package.jsonの書き方
今回初めてnpmを公開するにあたり、package.json
の書き方を再確認しました。
package.json
に記載の情報は、npm公開時に読み取られてリンクや名前やキーワードなどをnpmページに記載してくれます。
書き方で少しハマったののが、「コマンドライン 上でnpm名
を入力するだけで実行できるようにすること」でした。
これはpackage.json
にbin
プロパティを追記することで可能になります。今回の例だと以下を追記し、npm実行のメインとなるコードが書かれているファイル名を指定します。
元々あるmain
プロパティは不要になるので削除しておきます。
"bin": { "zipcode-area-jp": "./main.js" },
これを自身のターミナル上でも有効にする場合は、 npm link
コマンドを実行します。
すると、今回の例で言えばzipcode-area-jp
とたたいてプログラムが実行できるようになります。
npmを公開
まずはサインアップ。
コマンドライン 上で以下のコマンドを叩き、ログイン。
$ npm adduser # もしくは以下 $ npm login
あとは以下のコマンドを叩くとnpmを公開できます。公開自体は簡単なので公開前に何か間違い等ないか要確認。
$ npm publish
公開できたら忘れずログアウト。
$ npm logout
npmを非公開にする
npmは公開してから24時間以内であればマイページから非公開に(削除)することができます。 ですが、一度公開して削除したnpmと同じ名前のnpmを再度公開するには24時間待たなければなりません。
はい、そのミスをしでかしました。
一度npmを公開してから小さなミスに気付きすぐ削除し、修正して再度公開しようとしたらできない...。
これは...24時間後...だと...?
知人からの助言で名前を変えてすぐに再度公開できましたが、公開前によく確認しなかったのは反省点です...。
感想
簡単なnpmではありますが、初めて公開してみて学びもあったのでとても良い取り組みになったと思います。
公開したnpmを実際にインストールしてみて、動いた時はちょっと感動しました。ソフトウェアをリリースした時の感動ってこういう感じなのかなあ、としみじみ。
いずれは人に役立つnpmやその他ツールを開発して公開できたらいいなーと思います。