devnotes.

Modern JavaScript Tooling Overview

Modern JavaScript development rarely means writing a single script tag by hand for anything beyond a small demo — a typical project relies on a small set of standard tools.

{
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "lint": "eslint ."
  }
}

Package managers (npm, pnpm, yarn) install and track third-party dependencies listed in package.json. Bundlers (Vite, esbuild, Webpack) combine dozens of modules and dependencies into a small number of optimized files for the browser, and handle features like hot module reloading during development. Transpilers like Babel (or TypeScript's own compiler) convert newer syntax down to a form older browsers understand, or add type-checking on top of JavaScript.

Linters and formatters — ESLint and Prettier are the standard pair — catch likely bugs and enforce a consistent code style automatically, which matters more as a codebase grows and more people touch it. None of these tools change what JavaScript is; they exist to make working with it at scale more manageable.

Modern JavaScript Tooling Overview: Bundlers, Linters & More | DevNotes