npm link なにが便利か

tl;dr

手元で開発中のモジュールをローカルの別のプロジェクトで使いたいときに便利


  • いまあなたは『my-great-module』というすごい便利なモジュールを作っているとする

  • すごい便利なモジュールなのだけど一部未完成なのでnpmにパブリッシュするのはまだためらっている

  • でもすごい便利なモジュールなのでβでもいいから手元で開発中の別のプロジェクトで早く使いたい

    • なんとかしたい

みたいなときに便利。

もしくは、

  • 公開中のnpmモジュールに新機能付けたいけどドッグフーディングしたい
    • まだnpmに公開はしたくなくて、ローカルで試したい
      • ブランチ切って試したい

みたいなときに便利。

npm link

docs.npmjs.com

使い方書いてある。

使い方ザッと書くと

  1. 利用元のモジュールへ cdして npm link
$ cd my-great-module
$ npm link
  1. 利用先で npm link <モジュール名>
$ cd my-develop-other-project
$ npm link my-great-module

注意点

  • npmのグローバル(npm -g)にシンボリックリンク貼って参照している
  • npm link <モジュール名>
  • スコープモジュールの場合は @scope/モジュール名形式
    • 要は npm i するときと同じ形式でlinkする

yarmもあるよ


ようは自前のnpmモジュールを手元でシュッと試したいときとかに便利ですね