写 JavaScript / TypeScript,光是 Node + npm + ts-node + jest + nodemon 这一摞工具就得装半天,版本还对不齐。Oven 用 Rust 写的 Bun 想把这摞东西收进一个可执行文件里:运行时、测试、脚本、包管理、执行器,全给你。

是什么
Bun 是 Oven 开源的一体化 JavaScript / TypeScript 工具集,用 Rust 写、底层跑的是 JavaScriptCore,MIT 许可。仓库当前 9.6 万个 Star、5070 个 Fork,最新版本 bun-v1.4.2 发布于 2026 年 9 月,几乎每天都有提交。核心是 Bun 运行时——一个 Node.js 的 drop-in 替代品,启动更快、内存更省;外层还包了测试运行器、脚本运行器、兼容 Node 的包管理器(bun install)和 bunx 执行器。一句话:一个 bun 命令,顶掉 npm + ts-node + jest + nodemon 那一整套。
它不追求"另起炉灶",而是尽量兼容 Node 生态。老的 package.json、node_modules 基本能直接吃,迁移成本远比 Deno 那种"新标准派"低。对大多数项目来说,换掉的是底层引擎,上层的代码几乎不用动。

Bun 的仓库首页。Rust 主仓、MIT 许可,最近一次提交就在今天
它到底好用在哪儿
第一是极速运行时。基于 JavaScriptCore,启动时间和内存占用明显低于 Node;TypeScript、JSX 开箱支持,不用再挂一层编译步骤。对"跑个脚本、起个服务"这类高频小事,体感快得明显。
第二是包管理快。bun install 比 npm / yarn 快一大截,lockfile 还能和 npm 兼容,老项目几乎零改动就能切过来。装依赖这种最磨人的等待,被它砍掉一大截。
第三是内置测试与工具链。bun test、bun run、bunx 一体,省掉了 jest / ts-node / nodemon 那套独立依赖。新项目从第一天起就少装好几个包。
第四是跨平台一键装。Linux / macOS / Windows 都支持,curl 一条命令、npm、Homebrew、Docker 都能装,几乎没有环境门槛。

bun-v1.4.2 的发布记录。每月都在迭代
怎么用
装它最省事就是一行:curl -fsSL https://bun.com/install | bash,或者 npm install -g bun、brew install bun。装完直接 bun run index.tsx 就能跑 TS;bun test 跑测试,bun install <pkg> 装包,bunx cowsay hi 跑一次性的包。升级就 bun upgrade,它还会在每次提交到 main 后自动发一个 canary 构建,想追新就 bun upgrade --canary。
对现有 Node 项目,最常见的切法是把 npm run 换成 bun run、把 npm install 换成 bun install,先拿启动和安装速度开刀,再慢慢把测试也迁过来。
不足也得说清楚
Node 兼容不是 100%。绝大多数项目能直接跑,但碰到冷门原生模块、或者依赖 Node 某些内部行为的代码,可能要改。别指望它能无缝吞掉所有历史项目。
9425 个开放 Issue 说明边角兼容性还在补课;大版本迭代快,偶有破坏性变更,升级前最好看一眼 changelog。另外它把很多事自己揽了,出问题时的排错心智模型和 Node 生态略有差异,新手需要一点适应期。
跟同类怎么比
对照 Node.js、Deno。Deno 也追求一体化,但更强调安全和 Web 标准,迁移成本偏高;Bun 主打"快 + 兼容 Node 生态",切入最顺滑。Node 胜在稳,但慢、依赖重。想无痛提速、又不想动现有工程结构,Bun 是最省心的入口。
我的判断:如果你受够了 Node 那套层层工具链,想要一个又快、又能直接吃 npm 生态的替代,Bun 几乎是现在最稳的选项。9.6 万 Star、v1.4.2、每月都在动,成熟度已经够日常用了,没必要再等。
GitHub:https://github.com/oven-sh/bun
官方网站:https://bun.com
标签:#Bun #JavaScript #TypeScript #运行时 #包管理器 #开源 #Rust
你现在的 Node 项目里,最想先提速的是"安装依赖"还是"跑测试和启动"?