macOS下载、安装 Bun v1.3.14(附安装包bun-darwin-aarch64.zip)

发布于 2026/7/27 · 1 阅读
BunJavaScriptTypeScript运行时打包器测试运行器包管理器Node.jsZigRust
Bun 是一个面向 JavaScript 和 TypeScript 的一体化工具包,以单个可执行文件提供,定位为 Node.js 的直接替代品,集成了运行时、打包器、测试运行器、脚本运行器和包管理器。

封面.png

1. Bun 简介

Bun 是由 Jarred Sumner 创建、由 oven-sh 团队开发的一体化 JavaScript/TypeScript 工具包。自 2021 年首次发布以来,它已迅速成长为 GitHub 上最受欢迎的 JavaScript 运行时项目之一,截至 2026 年 7 月拥有超过 95,000 个 GitHub Stars 和约 5,000 个 Forks,日均增长约 650 颗星,正向 10 万星里程碑稳步迈进。

Bun 以单个可执行文件 bun 的形式提供,定位为 Node.js 的直接替代品(drop-in replacement)。它采用 Zig 编写核心(v1.3.14 开始逐步迁移至 Rust),底层使用 WebKit 的 JavaScriptCore 引擎(而非 V8),从而大幅降低了启动时间和内存开销。Bun 在一个二进制文件中集成了运行时、打包器(bundler)、测试运行器、脚本运行器和 Node.js 兼容的包管理器,开发者不再需要安装成千上万的 node_modules —— 只需要 bun。其内置工具比现有方案显著更快,并且可以无缝用于现有 Node.js 项目,几乎无需改动。

核心特色

  • 极速启动:JavaScriptCore 引擎带来极低的冷启动延迟,适合 CLI 工具和 Serverless 场景
  • 一体化工具链:原生支持 TypeScript 和 JSX,无需额外配置 Babel 或 ts-node
  • Node.js 兼容:兼容 npm 生态,可直接运行大多数 Node.js 项目
  • 内置数据库支持:原生 SQLite(bun:sqlite)和 PostgreSQL(Bun.sql)驱动
  • 原生 Web API:内置 fetchWebSocketResponseRequest 等 API
  • 高性能包管理器bun install 比 npm 快数十倍,采用符号链接与硬链接混合策略
  • 内置测试运行器:兼容 Jest 风格,无需额外依赖
  • 跨平台:支持 macOS(x64 和 Apple Silicon)、Linux(x64 和 arm64)、Windows(x64 和 arm64)

2. bun-v1.3.14 版本亮点

该版本汇集了 11 位贡献者 的贡献,共修复 92 个 issue

v1.3.14 是 Bun 历史上功能密度最高的版本之一,带来了多项重大新能力:

内置图像处理 API (Bun.Image):原生零依赖图像处理引擎,支持 JPEG、PNG、WebP、GIF、BMP、HEIC/HEIF、AVIF、TIFF 等格式的解码,以及 JPEG、PNG、WebP、AVIF 格式的编码。提供链式不可变 API(resizerotateflipmodulatecrop),性能比 sharp 快 1-2 倍,元数据读取快约 70 倍。

全局虚拟存储(Global Virtual Store):新的包安装架构,所有包仅下载一次到全局缓存,node_modules 中只存放轻量级虚拟映射文件,热安装从约 841ms 降至约 115ms,提升约 7 倍。

HTTP/2 和 HTTP/3 支持Bun.serve() 可通过 h3: true 启用 HTTP/3(QUIC)协议,同时兼容 HTTP/1.1 和 HTTP/2,单处理器吞吐量约 50.9 万 req/s。fetch() 客户端也支持 protocol: "h2"protocol: "h3" 选项。

重写 fs.watch():完全重写文件系统监视,macOS 上改用单线程 FSEvents + kqueue,消除双线程开销,修复了文件删除后重建不触发变更事件的问题。

--no-orphans 标志:防止 Bun 崩溃或被杀死时遗留孤儿子进程,对于 Docker 容器中 Bun 作为 PID 1 运行的场景至关重要。

核心从 Zig 重写为 Rust:本版本标志着 Bun 核心实现从 Zig 迁移到 Rust,约 100 万行代码的移植,通过了 99.8% 的测试套件。

性能显著提升:JavaScriptCore 引擎同步了 565 个上游 WebKit 提交,异步函数调用快约 15%;ESM 模块加载快约 12%;跨语言 LTO 优化使 HTTP 吞吐量提升 3.5%,二进制体积减小 9MB(macOS)。

3. 获取安装包

如果访问 GitHub 不便,安装包及中文文档:https://hanshuixin.org/go/224D(内含 bun-darwin-aarch64.zip、README 中英对照、发布说明中英对照和 LICENSE)。

macOS安装bun-bun-v1.3.14(bun-darwin-aarch64).zip
├── bun-darwin-aarch64.zip
├── macOS安装bun-bun-v1.3.14(bun-darwin-aarch64).pdf
├── README/
│   ├── README.md
│   └── README-中文版.md
├── 发布说明/
│   ├── RELEASE-NOTES.md
│   └── RELEASE-NOTES-中文版.md
└── LICENSE

4. 快速开始

解压整合包根目录中的 bun-darwin-aarch64.zip,将解压得到的 bun 可执行文件放入 PATH 路径中即可使用。

常用命令

# 运行 TypeScript/JavaScript 文件
bun run index.ts

# 初始化新项目
bun init

# 安装依赖
bun install

# 添加软件包
bun add express

# 运行测试
bun test

# 启动 HTTP 服务器
bun run --hot server.ts

# 执行一次性包
bunx cowsay 'Hello, world!'

# 升级 Bun
bun upgrade