JavaScriptのライブラリを最小構成でnpmに公開する方法

ライブラリの作成

必要なファイルは以下の2つ

  • index.js
  • package.json

Nodeとnpmはローカルにインストール済みのものとして進めます。

ディレクトリ作成&移動


mkdir my-original-sum
cd my-original-sum

index.jsの作成


touch index.js

中身はなんでもいいのですが、配列の数字の合計値を返す関数を作成しました。


// index.js
const sum = (numbers) => {
    return numbers.reduce((a, b) => a + b);
};
module.exports = sum;

package.jsonの作成


npm init -y

nameに任意のパッケージ名を指定します。


{
    "name": "my-original-sum",
    "version": "1.0.0",
    "description": "",
    "main": "index.js",
    "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
    },
    "keywords": [],
    "author": "",
    "license": "ISC"
}

これでライブラリの作成は完了です。

最終的なディレクトリ・ファイル構成はこんな感じ。


my-original-sum/
|-- index.js
`-- package.json

npmに登録する

npmjs.com/signupから新規登録してください。

npmに公開する

登録ができたらnpmに早速公開していきます。

npmにログイン


npm login

ログインできたか確認

ユーザーIDが表示されればログイン成功です。


npm whoami

同じ名前のパッケージがないか確認

同じ名前のパッケージを公開することはできないので、下記コマンドで事前に確認しておくと良いでしょう。
存在しないパッケージ名であれば404が返ってきます。


npm info [package-name]

公開


npm publish

アップデート

アップデートする場合はpackage.jsonversionを上げた上でnpm publishコマンドを実行します。

バージョン上げに関しては手動でpackage.jsonを編集しても良いですし、コマンドから行うことも可能です。
下記コマンドを実行するとpackage.jsonversionがインクリメントされます。


# 0.0.1上げる
npm version patch

# 0.1.0上げる
npm version minor

# 1.0.0上げる
npm version major

削除


npm unpublish [package-name] --force