esbuild is a fast bundler for JavaScript and its related languages (e.g. TypeScript, JSX, JSON, and CSS) with support for both the browser and node. This tag is specific for the esbuild bundler and is not used for general questions about bundling ES modules.
esbuild is a fast bundler for JavaScript and its related languages (e.g. TypeScript, JSX, JSON, and CSS, as well as some content formats, like Text and Binary, are all supported by default without needing to install plugins).
esbuild's primary goal is performance (claiming to be 104 times faster than webpack 5 in certain benchmarks), with ease-of-use and support for modern syntax listed as important secondary goals ("create an easy-to-use modern bundler along the way").
esbuild supports transforming modern JavaScript syntax into older equivalents based on specified target environments. Supported targets include:
- All major browsers (e.g. chrome, edge, firefox, ie, safari, and others)
- JavaScript language versions (e.g. "es2022")
- node (e.g. "node12.19.0").
Note that support for very old targets (like ES5) is currently limited and may produce errors.
Useful Links
- Getting Started
- Upcoming Roadmap: Upcoming feature support, as well as features with no current planned support (such as TypeScript type checking)
- Community Plugins: "a centralized list of 3rd-party plugins to make discovery easier"
- Bundle Size Analyzer tool: "visualize the contents of your esbuild bundle"