npm ライブラリ - Node.js

npmに会員登録する

以下のリンクから会員登録します。

ログイン

コンソールで以下のコマンドを入力すると、ブラウザでログイン画面が表示されます。

npm login

// 実行結果
npm notice Log in on https://registry.npmjs.org/
Login at:
https://www.npmjs.com/login?next=/login/cli/58ee869a-fe09-44e0-9756-c37bf9f96b4c
Press ENTER to open in the browser...

Logged in on https://registry.npmjs.org/.

ログインされているか確認するには次のコマンドを実行します。ログインされているとユーザー名が表示されます。

npm whoami

ログアウトする場合は、次のコマンドを実行します。

npm logout

公開するためのコマンド

パッケージを公開するには、作成したプログラムがあるファイルで次のコマンドを実行します。

npm publish

最新のパッケージを削除するには、次のようにします。

npm unpublish --force

パッケージ名を指定して削除するには、次のようにします。

npm --force unpublish <パッケージ名>

公開するパッケージを作成する

  • npm_pkg
    • package.json
    • script.js

まず、「 npm init 」を実行し、npm プロジェクトを初期化します。

質問内容は次のようにします。

パッケージ名は既存のパッケージのものと同じだったり、似たパッケージ名の場合はエラーになります。

package name: (npm) hello-nodecli
version: (1.0.0)
description:
entry point: (script.js)
test command:
git repository:
keywords:
author:
license: (ISC)

作成された package.json を次のように編集します。

package.json

{
  "name": "nodecli-hello",
  "version": "1.0.0",
  "bin": {
    "nodecli-hello": "script.js"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "description": ""
}

次にプログラムのファイルを次のように作成します。

script.js

#!/usr/bin/env node
console.log("Hello, Node.js - npm");

「 npm login 」を実行してログインします。

ログイン後、「 npm publish 」を実行しパッケージを公開します。

「 https://www.npmjs.com/ 」でパッケージ名が検索できれば、パッケージが公開されています。

公開されたパッケージのインストール

公開された「 nodecli-hello 」のパッケージをインストールします。

npm --global i nodecli-hello

「 nodecli-hello 」とコマンドを実行し、「 Hello, Node.js - npm 」と表示されれば成功です。

ローカルインストールしたパッケージを実行する場合は、パスが通っていないためエラーになります。

ローカルインストールしたパッケージを CLI で実行する場合

コマンドラインで実行するパッケージで「 nodecli-hello 」とコマンドを実行してもパスが通っていないためエラーになります。

実行するにはいくつか方法があります。

1つ目は、パスも含めて実行する方法で以下のようにします。

./node_modules/.bin/nodecli-hello

2つ目は、package.json の scripts の項目を次のように変更して公開します。

package.json

{
  "name": "nodecli-hello",
  "version": "1.1.0",
  "bin": {
    "nodecli-hello": "script.js"
  },
  "scripts": {
    "nodecli-hello": "nodecli-hello"
  },
  "author": "",
  "license": "ISC",
  "description": "",
  "dependencies": {
    "nodecli-hello": "^1.1.0"
  }
}

ローカルインストールし、次のようにコマンドを実行します。

npm run nodecli-hello