1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

miseを導入してnode+pnpmの環境構築をさくっとやってみた

1
Posted at

はじめに

Node.js を使った開発を始める際、Node.js本体だけでなく、pnpmのようなパッケージマネージャーのバージョン管理も必要になります。プロジェクトごとに必要なバージョンが異なると、環境差分によるエラーに悩まされることもあります。
本記事では、ランタイムや開発ツールのバージョン管理ツールである mise を導入し、Node.js と pnpm を使える開発環境を構築する手順をまとめます。mise の基本的な使い方にも触れながら、プロジェクト単位で環境をそろえるところまで試してみます。

目次

1. miseとは
2. miseのインストール
3. miseを使ってNode.jsとpnpmをインストール
3. プロジェクト内でバージョンを共有
まとめ

1. miseとは

mise は、Node.js だけではなく Python・Ruby などのランタイムや、pnpm・npm・Terraform といった開発ツールのバージョンをまとめて管理できるツールです。
もし mise を使わなかったとすると、Node.js では nvm を使い、Python では pyenv を使い、、、といった感じで、それぞれ別々のバージョン管理ツールを使うこととなり、「あれ、これのバージョン管理ってどれ使ってたんだっけ?」みたいなことになる可能性が高いです。
mise だけで色々なパッケージのバージョン管理が完結するし、環境構築もめちゃくちゃ簡単という便利なツールになっています。
また、かなり多くのパッケージに対応しているというのも魅力の1つです。(公式Registryにて確認できます。)

2. miseのインストール

今回は Windows + winget にて導入する方法を解説します。

PowerShell を起動し、次のコマンドを実行します。

winget install jdx.mise

インストール後は、PowerShell を一度閉じて開き直し、mise が利用できることを確認します。

mise --version

次に、PowerShell を起動したときに mise が自動で有効になるよう、PowerShell プロファイルへ設定を追加します。

'(&mise activate pwsh) | Out-String | Invoke-Expression' | Add-Content -Path $PROFILE

$PROFILE の保存先フォルダがまだ存在しない場合は、先に次のコマンドを実行してください。

New-Item -ItemType Directory -Force -Path (Split-Path -Parent $PROFILE)

設定を反映するため、PowerShell を再起動します。
最後に診断コマンドを実行し、問題がないか確認します。

mise doctor

これで完了です。導入方法の詳細はmise公式ドキュメントのインストール手順も参照してください。

3. miseを使ってNode.jsとpnpmをインストール

今回はプロジェクトで使う場合を想定して解説をします。

以下のコマンドをプロジェクトのルートで使うことで、インストールとプロジェクトで使うバージョンとしての設定が可能です。

mise use node@24.18.0
mise use pnpm@11.17.0

@ の後ろは latest なども使えます。

上記コマンドを実行すると、自動で mise.toml というファイルが追加されます。ここに設定したバージョン情報が記されています。

[tools]
node = "24.18.0"
pnpm = "11.17.0"

設定されたバージョンが使用できることを確認します。

node --version
pnpm --version

4. プロジェクト内でバージョンを共有

mise.tomlが置いてある場所で以下のコマンドを叩くことで、記されているパッケージのバージョンがインストールされます。

mise install

mise.tomlに書かれているバージョンがmiseでインストールされ利用可能な状態であれば、自動でそのバージョンを使うように動いてくれます。ですので、プロジェクトを移動するごとに上記コマンドを叩く必要はありません。

実運用としては、プロジェクトルート上にmise.tomlを置いておき(mise useを使えば自動で追加される)、Gitで共有してクローンしてきたときにmise installをしてもらうという運用になるかと思います。そうすれば、チーム内でそれぞれが使っているバージョンが違うといった問題を防ぐことができます。

まとめ

miseを使ってみたら環境構築やバージョン管理をかなり楽にすることができました!プロジェクト内の設定ファイルの数も1つで済むため、すっきりしていて個人的に好きです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?