ローカル開発環境で検証時に使用するTSライブラリ作成テンプレ作ったZennけけずん🍴ローカル開発環境で検証時に使用するTSライブラリ作成テンプレ作った2024/01/19に公開1件TypeScriptpnpmtechはじめにローカル開発環境(以下、ローカル)で検証する際に、一部の機能をライブラリとして切り出しておくためのリポジトリ作った。npmで公開しないようにするためにpackage.jsonのprivateフィールドはtrueにしている。テンプレートリポジトリ化しているので、ライブラリを作る際は複製して使うよろし。linkを使う方法を記載しているが、npmでも同じことできるので必要あれば適宜読み替えてください作ったものほい。linkを使ってローカルからアクセス可能にする方法と、pnpmのworkspaceを使ってアクセスする例をそれぞれ記載する。linkを実行することで、ローカルでシステム全体や特定の場所からアクセス可能にすることができる。下記のように、hogeパッケージとfugaパッケージが同階層にある。../fuga上記手順を実行すると、fugaパッケージのnode_modulesにhogeパッケージへの参照が作られ、fugaパッケージからhogeパッケージをインポートすることができる。--globalを実行するとシステム全体でライブラリへのアクセスが可能になるらしいが、下記エラーが発生するため実行できない。binariesGitHubのpnpmリポジトリを見ると下記のIssueがあった。https://github.com/pnpm/pnpm/issues/7511使うか分からないけど使えると便利そうな気はするので直ってくれると嬉しい。pnpmのworkspaceを使う場合pnpmのworkspaceを使い、workspace内のパッケージを指定してライブラリへアクセスが可能になる。下記のように、workspaceのルートとなるproject-rootパッケージの下に、hogeとfugaがそれぞれパッケージとして存在する。hogeを実行する上記手順を実行すると、fugaパッケージのnode_modulesにhogeパッケージへの参照が作られ、fugaパッケージからhogeパッケージをインポートすることができる。おわりにライブラリ作るときに毎回あれこれインストールして設定ファイル書いてとするのが面倒だったので、今回テンプレを用意した。検証時に使用するためのものだが、必要あればpackage.jsonの設定を書き換えてnpmにpublishできるようにすることもできるはず。みんなライブラリ作るときどうしてるんだろうね。Proよくある質問LinksX(Twitter)GitHubメディアキットLegal利用規約プライバシーポリシ。