Listen to this story
AIM Daily XO
Join our editors every weekday evening as they steer you through the most significant news of the day, introduce you to fresh perspectives, and provide unexpected moments of joy
Download our Mobile App
Betting big on speed?
Meanwhile, users have also pointed out some drawbacks of the software.
Bun currently does not have a debugger.
There are also issues with bundling and transpiling. There are different frameworks out there, Angular, Svelte, Vue, and others, which have different file formats, but these frameworks cannot be used with Bun.js yet.
Bun.js comes with TypeScript support out of the box, and they’re making the same error Deno developers made—albeit on a larger scale owing to bundling/transpiling—and support needs to be provided for the core Bun.js to stay up with TypeScript improvements.
To receive the latest TypeScript features, you’ll have to wait for Bun.js to add support for it as well.
Trying to please everyone
Bun attempts to be an all-in-one tool, which places a significant responsibility on its contributors and is causing problems.
Bun should consider having small separate tools that accomplish one thing well but can nevertheless function organically with each other. Bun.js has currently placed all the elements in one plate which users will have to separate, pick, and use.
Bun-core, a runtime and package manager, might be the solution. It would offer the essential functionality needed to power our application with incredible speed and little overhead. Then, a separate module might be installed using a built-in package management to provide features like bundling or transpiling, support for different frameworks, and more. The bun-core could then expose API to extend it with the modules—our ingredients.
Meanwhile, Node is still routinely updated, with version 18.0 recently released, and its future is seemingly secure even with Deno and Bun around. Node is used in the infrastructures of many companies, like PayPal, with new startups following suit.
Bun.js is still in beta and has minimal support—you’d need Windows Subsystem for Linux to run it on Windows. Despite its various features, it cannot yet be considered for production-ready software because there is still much work to be done on it.