40,124
stars
+0+2+55
1,371
forks
263
watchers
562
prs
3,951
issues
315
releases
0
discussions
README
Website |
Getting started |
Documentation |
Plugins |
FAQ
Why?
Our current build tools for the web are 10-100x slower than they could be:
The main goal of the esbuild bundler project is to bring about a new era of build tool performance, and create an easy-to-use modern bundler along the way.
Major features:
- Extreme speed without needing a cache
- JavaScript, CSS, TypeScript, and JSX built-in
- A straightforward API for CLI, JS, and Go
- Bundles ESM and CommonJS modules
- Bundles CSS including CSS modules
- Tree shaking, minification, and source maps
- Local server, watch mode, and plugins
Check out the getting started instructions if you want to give esbuild a try.Top issues
#1921How to fix "Dynamic require of "os" is not supported"82 comments · 2022-01-07#16[Feature] Code splitting on async import() statements.70 comments · 2020-02-17#312WebWorker support?57 comments · 2020-08-03#475Useless repeated imports when using external modules44 comments · 2020-10-20#795URL assets bundling38 comments · 2021-02-12#253support for top level await32 comments · 2020-07-12#399Incorrect import order with code splitting and multiple entry points30 comments · 2020-09-20#3384How to use esbuild with css import assertions/attributes29 comments · 2023-09-13
Latest release
v0.28.2 v0.28.2 2026-08-08Fix tree shaking bug due to TypeScript import alias (4507)
This release fixes a bug that could cause esbuild to incorrectly tree-shake imports that are used in a TypeScript type alias under certain circumstances. Affected code uses a TypeScript-specific import assignment and looks something like this:
ts
import Base from './dep.js';
import Alias = Base.SomeType;
Fix CSS minification bug involving & (4497)
This release fixes a bug where esbuild's CSS minifier incorrectly removed a & when it was unsafe to do so. Here is an example:
css
/ Origi