💻

【実録】10年ぶりエンジニア、ターミナル(コマンドライン)と和解する - Cursor × Next.js導入編

に公開

昔の環境構築 vs 今の環境構築

前回の記事で、AIエディタ「Cursor」と最強のルール設定(.cursorrules)を手に入れました。
今回は、いよいよSaaSプロダクト(親子ToDoアプリ)の土台となるプロジェクトを作成します。

10年前の記憶では、環境構築といえば「パスが通らない」「バージョンが合わない」で週末が潰れる苦行でした。
果たしてAI時代はどうなのか?

結論から言うと、「ターミナルへの苦手意識」 はまだありましたが、AIがいれば怖くありませんでした。

1.まずは「プロジェクトの作成」をしていきます!

意気揚々とプロジェクト作成コマンドを打ち込んだ私に、最初の試練が訪れました。

Cursorのターミナルでプロジェクト作成コマンドを実行する

npx create-next-app@latest family-todo-app

しかし、早速エラー❗

zsh: command not found: npx

「npxって何?」状態です。 AIメンター(Leo)に聞くと、「Web開発のエンジンである Node.js が入っていません」とのこと。 昔なら公式サイトからインストーラーをダウンロードしていましたが、今は 「Volta」 というツールで管理するのがモダンらしいです。

Macのターミナル(いつの間にか bash から zsh になっていました)で以下を実行。

Volta(管理ツール)を入れる

curl https://get.volta.sh | bash

Node.jsを入れる

volta install node

これで node -v を叩くとバージョンが表示されました。 「パスを通す」作業で詰まっていた昔が嘘のように一瞬でした。

2. 凡ミスとAIの指摘(create-next-app)

エンジンが入ったので、再び、アプリ作成コマンドを実行。

npx create--next-app@latest family-todo-app

すると、またしてもエラー。

npm error 404 Not Found

「え、最新の手順じゃないの?」と焦りましたが、よく見ると……

× create--next-app (ハイフンが2個) ○ create-next-app (ハイフンは1個)

単純なタイプミスでした。 AIにエラーログを投げたら「ハイフンが多いですよ」と即答。
10年前なら、この孤独なエラーで心を折られていたかもしれません。AIの「即レス」は精神安定剤になります。

3. Next.jsのセットアップ

正しいコマンド(npx create-next-app@latest family-todo-app)が通ると、英語で質問(Yes/No)が飛んできました。

? Would you like to use the recommended Next.js defaults?
 Yes, use recommended defaults ...

AIメンター(Leo)いわく
この 『Yes, use recommended defaults(推奨設定を使う)』 を選ぶと、その後に続く『TypeScript使いますか?』『Tailwind使いますか?』といった細かい質問はすべて自動的にスキップされ、全部入りの最強セットでインストールされる仕様になっています。
とのことで、初めから推奨設定あるの楽で良いですね。中身の理解ゼロですけどね!

しばらく待つと、

Success! とのことで、無事に完了しました。

4. Cursorでプロジェクトを開く

最後に、作成されたフォルダをCursorで開きます。

cd family-todo-app
code .

コマンド一発でエディタが立ち上がり、左側にファイル一覧がズラリ。 10年前のJavaプロジェクトのような重厚長大なXML設定ファイルはなく、非常にスッキリしています。

とAIメンターは言いましたが、私の環境ではそうは動かず、普通に
Crusorメニュー > ファイル > フォルダを開く からフォルダを開きました。

学び:AI時代の環境構築とは
ここまでの作業で感じたのは、「暗記しなくていい」 という解放感です。

コマンドを忘れてもAIが教えてくれる。

エラーが出てもAIが翻訳してくれる。

推奨設定(Yes/No)もAIが判断してくれる。

私たちがやるべきは、「何を作りたいか」をブラさずに持ち続けることだけ。

次回予告

次回は、いよいよこのプロジェクトをブラウザで動かし、コードを修正して「Hello World」ならぬ「Hello Family」を表示させます。(いや簡単すぎるかな)

Discussion