Bun 1.3 stuffs everything and kitchen sink into JS runtime
All-in-one toolkit or over-ambitious feature creep? You decide
Version 1.3 of the Bun JavaScript runtime and toolkit has landed, pushing forward the project's goal to consolidate fragmented JavaScript toolchains into a single solution. Yet the rapid expansion has some developers questioning whether Bun is trying to do too much, too fast.
Written in Zig and powered by Apple-sponsored JavaScript Core engine, Bun is aiming for fast performance, Node.js compatibility, and all-in-one support for application developers.
Creator Jarred Sumner and team have posted nearly 14,000 words about new features: a full-stack dev server with hot reloading (meaning code changes are reflected immediately in a running application); a SQL API with PostgreSQL, MySQL and SQLite clients; Redis support; enhanced routing; cross-platform compilation to standalone executables; a security scanner API; and isolated installs to minimize dependency conflicts and issues.
An isolated install means that packages (libraries) can only access explicitly declared dependencies. This works by creating package-specific directories beneath node_modules, where dependencies are stored, reducing the risk of a package accidentally using a different dependency than it was designed to use.
Software engineer Dylan Conway claimed that integrating JavaScript Core's garbage collector with Bun's event loop, new in 1.3, achieved a 100x reduction in idle CPU time and a 40 percent reduction in idle memory usage. More intensive usage of resources should translate to lower hosting costs.
Some new features mentioned by the team, such as the Redis client, were already released in previous minor updates, but there is no doubting Bun's rapid evolution. The scope of the project has steadily expanded. A note in the docs states that "long-term, Bun aims to provide an all-in-one toolkit to replace the complex, fragmented toolchains common today: Node.js, Jest, Webpack, esbuild, Babel, yarn, PostCSS, etc."
Bun 1.3 is described as the start of a series, with the likely next step being the release of Bake, a built-in server that will support React server components and server actions. Bake was originally slated to be released with Bun 1.3, but Sumner said on the official Discord forum that "it's not ready yet and we didn't want to delay bun 1.3 further."
It is just two years since Bun 1.0 was released, in September 2023, but its popularity has grown; Sumner said there are now more than 5 million monthly downloads of the toolkit. Bun users include Anthropic, which uses it for the Claude Code CLI (command line interface).
Developers have mixed views though. "Bun has turned into a beast. Covering nearly every feature someone could possibly need in their environment," said one; while another questioned that "I'm not sure I want all of what normally are external libraries coming out of one place."
- Programmers: you have to watch your weight, too
- Bun JS toolkit adds MySQL driver, secrets API, YAML, and more
- To digital natives, Microsoft's IT stack makes Google's look like a model of sanity
- Strong Java LTS arrives with the release of 25
Quality also suffers sometimes in the rapid release of new features, with perhaps another factor being that Zig is evolving and still a preview, with the latest release at the time of writing being 0.15.1. Reports of segmentation faults – illegal memory access such as out of bounds errors – are not uncommon in the Bun issue list.
Bun is open source under the MIT license , but some are puzzling over what will be the business model behind it. Sumner originally said this will be based on "fast serverless hosting," an approach also used by Vercel, whose co-founder Guillermo Rauch participated in a 2022 funding round for Oven.
A user on Reddit spotted a job vacancy for "Bun's first revenue-generating product" which will be "combining Bun's speed with modern AI capabilities."®