strapiとsupabaseをつなぐstrapi v4対応のupload providerがなかったので、自作のライブラリをnpmに投げることにしました。
その際に行ったことを書きます。
ライブラリ名の重複を確認する
ライブラリ名の重複を確認しましょう。
当然ですが、被っていると公開できないです。
リポジトリを作る
Githubリポジトリを作成しました。
この際、ライセンスファイルを手動で作成することが非常に面倒だったので、Githubに制作を任せています。
というか、このためだけにgh
コマンドを使用せずわざわざブラウザ操作で手動で作成しました。
該当のリポジトリをクローンして中身を移す
自作ライブラリがいる場所にいたので、そこにクローンしてきて以下のコマンドで中身を取得しました。
mv strapi-provider-upload-supabase-strage/* ./
mv strapi-provider-upload-supabase-strage/.git ./
隠しファイルである.git/
はワイルドカードで取ってこれなかったので個別に取得しています。(1敗)
npmにログイン
公開用のメアドが必要なので、好き放題スパムが来ても良いよう新規にメアドを作成しました。
事前にnpmにアカウントを作成しておき、以下のコマンドでログインします。
npm adduser
yarnなどの癖でnpm add user
とかすると、当然ですがuserという謎のライブラリが落ちてきます。(1敗)
色々入力を求められるので、OTPがスムーズに認証できるようブラウザでメールフォルダを開いて準備しておきましょう。
package.jsonにいろいろ書き足す
homepage
やrepository
, 'author'やengine
などを書き足していきます。
わたしの場合は、ちょうどstrapi v3まで対応していたsupabaseのproviderがあったのでそちらを参考にしました。
不安な場合は、著名なライブラリのpackage.jsonを見に行くとよいでしょう。
一通り書き終わったらgithubにpushします。
tag付け
versionを付けます。
git tag -a <version> -m '<message>'
git push origin tags/<version>
こちらのコマンドでタグ付けができるので実行しましょう。
実行したらGithub上から手軽にtag -> versionができるので、ぽちぽちクリックしてversion1.0.0をリリースします。
npmに公開
以下のコマンドで公開します。
npm publish ./
以上で完了です。