Bun - Incredibly fast JavaScript runtime, bundler, test runner, and package manager
项目地址:oven-sh/bun
⭐ Stars: 90,836 | 今日新增: 🔥 414 | 语言: Rust/Zig/C++
Bun 是一个 JavaScript 和 TypeScript 应用的一体化工具包,以一个名为 bun 的单一可执行文件形式发布。其核心是 Bun 运行时——一个快速的 JavaScript 运行时,被设计为 Node.js 的直接替代品。它使用 Zig 编写,由 JavaScriptCore 引擎驱动,显著减少了启动时间和内存使用。
核心能力
1. 运行时 (Runtime)
Bun 运行时兼容 Node.js,同时提供大量原生 API:
|
|
内置丰富的服务端 API:
- HTTP 服务器:
Bun.serve高性能 HTTP/WebSocket 服务 - 数据库客户端:内置 SQLite、PostgreSQL、Redis、S3 客户端
- 文件 I/O:
Bun.file高速文件操作 - FFI:直接调用 C/Rust 函数
- Web API:内置 fetch、WebSocket、Streams 等标准 Web API
- 内置工具:HTMLRewriter、YAML/TOML/JSON5 解析、图像处理、哈希、Glob 等
2. 包管理器 (Package Manager)
完全兼容 npm 的包管理器,速度大幅领先:
|
|
支持工作区 (workspaces)、隔离安装、锁文件、安全扫描、全局缓存等企业级特性。
3. 打包器 (Bundler)
内置高性能打包器,支持多种输出格式:
|
|
特性包括:
- 支持单文件可执行文件(Single-File Executables)
- CSS 处理
- HTML 和静态站点生成
- 热模块替换 (HMR)
- 字节码缓存
- 宏 (Macros) 系统
4. 测试运行器 (Test Runner)
内置 bun test 测试框架,兼容 Jest 语法:
|
|
支持生命周期钩子、Mock、快照测试、DOM 测试、代码覆盖率等完整测试功能。
安装方式
支持 Linux (x64 & arm64)、macOS (x64 & Apple Silicon) 和 Windows (x64 & arm64):
|
|
升级到最新版本:bun upgrade
语言构成
| 语言 | 比例 |
|---|---|
| Rust | 46.5% |
| Zig | 32.3% |
| C++ | 13.2% |
| TypeScript | 5.1% |
| C | 1.7% |
| JavaScript | 0.8% |
生态集成
Bun 已与主流框架和工具深度集成,包括:
- 前端框架:Next.js、Nuxt、SvelteKit、Astro、Remix、Vite、Qwik
- 后端框架:Hono、Elysia、Express、SolidStart、TanStack Start
- 数据库:Prisma、Drizzle ORM、Mongoose、Neon Postgres
- 工具链:Sentry、Discord.js、PM2
为什么选择 Bun?
- 极速:启动速度和包安装速度远超 Node.js/npm
- 全能:运行时 + 打包器 + 测试 + 包管理,一个工具全搞定
- 兼容:可直接运行现有 Node.js 项目,无需或只需很少改动
- 内置丰富:SQLite、PostgreSQL、Redis、S3、FFI 等开箱即用
- TypeScript 原生支持:无需额外配置即可运行 TS/TSX 文件
最新版本为 Bun v1.3.14(2026-05-13 发布)。
数据来源:GitHub Trending | 抓取日期:2026-05-16