Skip to content

JavaScript Tools

JavaScript tools are the command-line programs that install packages, build code, check it for problems, and run tests. This area collects short entries for developers choosing a tool or joining an unfamiliar project. Each entry shows how to install the tool, what it does, and the commands that cover everyday work.

Read an entry when a tutorial or a project’s package.json names a tool you haven’t used yet. Most entries take a few minutes to read.

Topics covered include:

  • Package managers and runners: Tools for installing and running dependencies (npx, pnpm, Yarn)
  • Node.js version managers: Tools for selecting a Node.js version per project (nvm, fnm, Volta)
  • Runtime toolchains: Tools for installing, checking, and testing code in a runtime (Bun, Deno)
  • Bundlers and build tools: Tools for combining and optimizing source files (Vite, webpack, esbuild)
  • Compilers and TypeScript runners: Tools for transforming or running source code (Babel, tsc, tsx)
  • Linters and formatters: Tools for checking code and keeping its style consistent (ESLint, Prettier, Biome)
  • Test runners and coverage: Tools for running tests and measuring code coverage (Jest, Vitest, c8)
  • Task and monorepo tools: Tools for coordinating scripts, projects, and servers (Turborepo, Nx, nodemon)
  • Scaffolders and release tools: Tools for creating projects and automating releases (create-vite, Husky, Changesets)
  • Documentation and bundle analysis: Tools for generating references and inspecting output (JSDoc, TypeDoc, size-limit)

The ideas behind these tools, such as transpilation, polyfills, and the npm registry, live in the JavaScript Glossary. npm and Node.js have entries there too. This area covers the named tools and their command-line workflows. For the full npm command list, see the npm CLI documentation.

Not sure which term you need? Describe what you’re trying to do, and Mentor AI will point you to the right entries.

  • Bun A JavaScript runtime toolchain that runs JavaScript and TypeScript files and ships a package manager, test runner, and bundler in one executable.
  • Deno A JavaScript runtime toolchain that runs JavaScript and TypeScript in a permission sandbox and ships a formatter, linter, and test runner.
  • Jest A JavaScript test runner that finds and runs test files, with built-in assertions, mock functions, snapshots, and code coverage.
  • npx A JavaScript package runner that ships with npm and runs a package’s command from the project or the npm registry without a global install.
  • nvm A Node.js version manager that installs several Node.js versions on one machine and switches between them per shell or project.
  • pnpm A JavaScript package manager that stores each package version once on disk and links it into every project, with built-in monorepo support.
  • ts-node A TypeScript execution engine for Node.js that type-checks and compiles .ts files as they load, so they run without a separate build step.
  • Vitest A JavaScript test runner built on Vite that runs tests with Jest-compatible assertions and mocks, and reruns only affected tests on save.
  • webpack A JavaScript module bundler that follows a project’s imports from an entry file and combines its modules and assets into bundle files.
  • Yarn A JavaScript package manager that pins its own release in each project and installs dependencies with Plug’n’Play by default.