npmコマンドを実行すると何が起きるのか?

npmコマンドを入力してEnterキーを押し、待つ。すると突然、プロジェクトが動く。まるで魔法のように感じる。

それは魔法ではありません。一連のネットワークリクエスト、コードのパース、そしてファイルの最適化が行われているのです。

盲目的にコマンドを実行するのはやめましょう。これら6つの主要なコマンドの背後にある仕組みを理解しましょう。

  1. npm install このコマンドは package.json を読み取ります。クラウドレジストリにアクセスして、依存関係を探し出します。 • パッケージを node_modules フォルダにダウンロードします。 • バージョンの競合を解決します。 • 正確なバージョンを記録するために package-lock.json を作成します。

  2. npm run format:check これは検証ステップです。Prettierなどのツールを使用してファイルをスキャンします。 • コードの仮想的なレイアウトを構築します。 • コードをスタイルルールと比較します。 • ファイルを変更することなく、エラーを指摘します。

  3. npm run format このコマンドは、チェック中に見つかった問題を修正します。 • プロジェクトに対して Prettier を実行します。 • スタイルルールに一致するようにファイルを書き換えます。 • スペースやフォーマットを自動的に整えます。

  4. npm run lint これはコードのスペルチェッカーのようなものだと考えてください。ESLintは以下のようなエラーをスキャンします: • 構文ミス。 • 未使用の変数。 • インポートの不足。 • 不適切な React Hook の使用。

  5. npm run build このコマンドは、アプリを本番環境に向けて準備します。dist フォルダを作成します。 • tree shaking を行い、未使用のコードを削除します。 • 空白を削除し、変数名を短縮することでコードを minify(軽量化)します。 • JavaScript、CSS、およびアセットを最適化されたファイルにバンドルします。 • これらのファイルは、サーバーへのデプロイ準備が整った状態になります。

  6. npm run dev 開発用のローカルサーバーを起動します。 • Native ES Modules を使用し、ブラウザが要求したときのみファイルをコンパイルします。 • Hot Module Replacement (HMR) を使用して、ページをリフレッシュすることなくサイトを即座に更新します。

  7. npm run preview これは最終確認です。ソースコードは無視し、dist フォルダのみを確認します。 • アプリが実際のサーバー上でどのように動作するかをシミュレートします。 • 本番環境にデプロイする前にバグを見つけるのに役立ちます。

ターミナルはブラックボックスではありません。これらのツールの仕組みを理解していれば、問題が発生したときに素早くデバッグできます。

仕組みを知ったことで、コーディングの仕方が変わったコマンドはありますか?ぜひ以下で教えてください。

Source: https://dev.to/ashomondi/the-magic-under-the-terminal-what-actually-happens-when-you-run-npm-commands-13ba