TypeScriptやJavaScriptを自分のパソコンで動かすには、Node.jsが要る。まず入っているか確認しよう。
node --version
v から始まる数字が表示されました。これで準備できているんですか?
そう。command not found と出たら、まだ入っていない。公式サイトのLTS版をインストーラーで入れるのが一番簡単だ。LTSは長期サポート版のことで、安定して使える方だよ。
バージョンを使い分ける話も見かけました。
プロジェクトごとに必要なバージョンが違う、と実際に困ってから、nvmやVolta、miseのような管理ツールを入れれば十分だ。最初から全部そろえなくていい。
次はpnpm。プロジェクトが使うライブラリと、開発用のコマンドをまとめて管理してくれる道具だ。
npm install -g pnpm
pnpm --version
npm はどこから来たんですか?
Node.jsに最初から付いてくるパッケージマネージャーだ。npmのままでも開発はできる。Enginemixでは、速度とディスクの使い方を理由にpnpmを選んでいる。
プロジェクトに入ったら、まずこの3つを覚えよう。
pnpm install
pnpm add -D typescript
pnpm dev
install で必要なものをそろえて、add で新しく足すんですね。-D は何ですか?
開発中だけ使うもの、という印だ。型チェックやテストの道具は、公開したあとのアプリ本体には要らない。だから分けて記録しておく。
そして pnpm dev の dev は、pnpmが決めた命令ではない。プロジェクトの package.json に書かれている名前だ。
{
"packageManager": "pnpm@11.3.0",
"scripts": {
"dev": "next dev",
"build": "next build"
}
}
ということは、プロジェクトによって dev の中身は違うんですね。
そう。知らないコマンドをそのまま実行する前に、scripts の定義を見る癖をつけよう。何が起きるか読めるようになる。
packageManager の行にも意味がある。このプロジェクトはpnpmのこのバージョンで動かす、という記録だ。
ライブラリのバージョンも、どこかに記録されているんですか?
pnpm install を実行すると pnpm-lock.yaml ができる。実際に入れたライブラリのバージョンが、そこに全部書かれている。このファイルを共有すれば、別の人も同じ組み合わせを再現できる。
環境を公開する価値はそこにあるんだ。次は、書いたコードを記録する道具を見よう。

