🔰

npm start と npm run dev の違いについて調べてみた

2024/11/01に公開

月に1本以上記事を書くぞと決めて、テーマも決めていたのに全く調べていませんでした。

本日のテーマは「npm start と npm run dev の違いについて調べてみた」 という題名で書かせていただきます。

この記事を書くに至った背景

私は、今年の1月ごろからプログラミングを本格的に始めました。以前までは静的なWebサイト作りに勤しんでおりましたが、現在はJavaScriptライブラリであるReactを用いて、個人開発を行っています。コンポーネントライブラリを用いて画面描画を変えてみたり、ReactのフレームワークであるNext.jsでポートフォリオサイトを作ってみたり(未完成ですが...)、Reactに詳しくなりたくて突き進んでいるところです。そんなこんなで個人開発をしていたところ、このようなツイートを見つけました。↓
https://x.com/honey321998/status/1845053265945428194

この投稿者様の投稿を見ると、今までcreate-react-appを当然のごとく使っていましたが、どうやら開発の更新が止まっているようなので、create-viteを使うのが良いようです。

そこで私は新しい個人開発を、今まで使っていたcreate-react-appではなくcreate-viteでやることを決め、Vite+Reactを使った個人開発という全く新しいことを始めたわけです。

すると、問題はすぐに起きました。

「おかしい... npm start ができない。npm run build が必要なのか?あれ?ビルドしてもできない???」

どうやら、create-react-appで作った環境とは異なり、Vite+Reactではnpm run devコマンドを使うようです。

「じゃあ、何が違うの...?」

そもそも...

そもそも、npmとは何なのか確認していこうと思います。

npmとは、Node Package Managerの略です。

私の理解だと、npmコマンドでパッケージ(複数の、特定の機能を提供するために作られたプログラムコード(module)をまとめたもの)をインストールすると、実際のコードを書くうえで使用することができるようになるもの、でしょうか。

本題

まずはじめに、package.jsonの中身を見てみました。すると...

Debugのところのscripts部分が、 "dev": "vite"となっていることが分かります。この状態で、
1.npm run devを実行すると↓

2.npm startを実行すると

このように、エラーが出てしまいます。

では、Debugのscripts部分を"start: "vite"に変えてみます。

今度は、npm run devでエラーが出てしまいました。

ということは、npm startだとうまく行くのでは???

npm startnpm run startが同義であることもわかりました。

npm run startの場合

まとめ

今回分かったことはVite+Reactでしか検証していませんが、package.jsonで書かれているDebugscriptの中を書き換えることで本来ならnpm run devで動くところをnpm run startまたはnpm startと置き換えて実行することができました。

※ちなみに、npm run devrunはなくすことができませんでした。また、今回出したFirst-MarketというWebサイトは私個人で作ったものとなります。このように検証するようなことができて、知識も増えた気がします。

以上となります。読んでいただきありがとうございました。

Discussion