既存構成の課題感
基本的にコンテナ上で開発をしていたので、OSに入れてるのは一番新しい lts の Node.js、コンテナ上ではそれぞれ必要なバージョンの Node.js が入ったコンテナイメージを使ってました。
ただ、他のソフトウェアとの兼ね合いなどもあり、コンテナを利用しないシステム開発が必要になったので、上記の OS に直接 Node.js を入れていると不便だなという状況になりました。
ちなみに、バックエンドには Python を使うことが多いのですが、そちらは Poetry + Pyenv という感じで不満なく開発で来ていたので、同等の構成にできないかと思って調査しました。
Volta とは
Volta - The Hassle-Free JavaScript Tool Manager
Volta: Start your engines.
Volta は JavaScript のコマンドラインツールなどを管理するツールです。基本的なユースケースでは、複数バージョンの Node.js をインストールして、プロジェクトごとに適用したりという感じです。nvmとほぼ同じ使い方ができるかと!
ちなみに、volta install yarn@3
などもできるので、package manager manager のような使い方もできます。corepack との共存に課題感がありそうですが、厳密にパッケージマネージャのバージョンまで管理しているプロジェクトでない限りは問題にならないかと思います。