Bun
Discouraged
Not our default choice. We recommend staying on Node.js unless there is a specific requirement.
What is itโ
Bun is an all-in-one JavaScript runtime, bundler, transpiler, and package manager built on JavaScriptCore (Safari's engine). It emphasizes speed and developer experience. Currently at v1.x.
Why it's not our defaultโ
- Younger ecosystem โ Bun is newer than Node.js and Deno; some APIs are still marked as experimental or incomplete.
- Node.js compatibility gaps โ while Bun aims for Node.js compatibility, edge cases exist with native modules, streams, and some npm packages.
- Limited production track record โ fewer large-scale production deployments compared to Node.js means less battle-tested reliability.
- CI/CD support โ not pre-installed on most hosted runners; requires an extra install step.
- Team expertise โ Aliz teams are standardized on Node.js; introducing Bun adds cognitive overhead.
When it makes senseโ
- Performance-critical scripts โ short-lived scripts or dev tooling where Bun's startup speed is a measurable benefit.
- Client mandates Bun โ if the client's infrastructure is already Bun-based.
- Experimentation / prototyping โ quick prototypes where all-in-one tooling simplifies setup.
Alternativeโ
Node.js with our standard npm toolchain.
Resourcesโ
- Bun website
- Bun docs
- Node.js โ our recommended runtime