finds.dev← search

// the find

evanw/esbuild

★ 39,950 · Go · MIT · updated Jun 2026

An extremely fast bundler for the web

esbuild is a JavaScript/TypeScript/CSS bundler written in Go, designed to be orders of magnitude faster than webpack or rollup by doing everything in a single pass with heavy parallelism. It's for developers who are tired of waiting 30 seconds for a build and are willing to trade some ecosystem depth for speed. Vite uses it under the hood for dependency pre-bundling, which tells you how seriously the JS community takes it.

The speed claim is real and not marketing — bundling a large app in under a second without a cache is genuinely useful during development. The Go implementation means it ships as a single native binary with no npm dependency hell; the optional WASM build covers browser-based tooling. The plugin API is well-designed: synchronous resolve and load hooks that cover the common cases without the callback pyramid of webpack loaders. CSS modules support is first-class, not bolted on.

TypeScript support is transpile-only — it strips types but does not type-check, so you need a separate tsc pass to catch type errors, which complicates CI setup. The plugin ecosystem is thin compared to webpack or rollup; anything beyond basic asset handling usually requires writing your own plugin. Code splitting is supported but the output format options (ESM/CJS/IIFE) have enough edge cases with circular dependencies that you'll occasionally get runtime errors that webpack would have caught. No HMR built in — the dev server does live reload only, so you're on your own for hot module replacement in frameworks that need it.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →