Bun 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Bun 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Bun 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
操作系统 跨平台
软件类型 开源软件
开源组织
地区 不详
投 递 者 白开水不加糖
适用人群 未知
收录时间 2022-08-30

软件简介

Bun 是采用 Zig 语言编写的高性能 “全家桶” JavaScript 运行时,官方称其为 "all-in-one JavaScript runtime"。Bun 提供了打包、转译、安装和运行 JavaScript & TypeScript 项目的功能,内置原生打包器 (native bundler)、转译器、task runner、npm 客户端,以及 fetchWebSocket等 Web API。

Bun 是一个新的:

  • 带有 Web API 的 JavaScript 运行时,内置fetchWebSocketAPI。bun 嵌入了 JavaScriptCore,它往往比 V8 等更流行的引擎更快且内存效率更高(尽管更难嵌入)
  • JavaScript/TypeScript/JSX 转译器
  • JavaScript 和 CSS 打包器
  • package.json 脚本的任务运行器
  • npm 兼容的包管理器

Bun 的 HTTP 服务器基于 Request 和 Response 等 Web 标准:

// http.js
export default {
  port: 3000,
  fetch(request) {
    return new Response("Welcome to Bun!");
  },
};

Bun 完全从零开始构建,对标的项目是 Node.js 和 Deno 这类现代化的 JavaScript 运行时。

Bun 旨在替代当前的 JavaScript 和 TypeScript 应用程序或脚本,原生实现了数百个 Node.js 和 Web API,包括约 90% 的 Node-API 函数(native modules)、fs、path、Buffer 等。

Bun 的目标是在浏览器之外运行世界上大多数 JavaScript,为未来的基础架构带来性能和复杂性的增强,并通过更好、更简单的工具提高开发人员的生产力。

  • 内置了诸如 fetch、WebSocket 和 ReadableStream 等Web API
  • node_modules bun 实现了 Node.js 的模块解析算法,因此你可以在 Bun 中使用 npm 包。支持ESM和CommonJS,但Bun内部使用ESM
  • 在 Bun中,每个文件都是转译的。TypeScript和JSX就可以使用
  • Bun支持来自tsconfig.json文件的 "paths"、"jsxImportSource "等。
  • Bun.Transpiler Bun的JsX和TypeScript转译器在Bun中作为API可用。
  • 使用Bun.write提供的最快系统调用来写入、复制、管道、发送和克隆文件。
  • Bun自动从.env文件加载环境变量。不再需要 require("dotenv").config()
  • Bun提供了一个快速的SQLite3客户端,内置bun:sqlite。
  • Node-API Bun实现了大部分的Node-API(N-API)。许多Node.js原生模块都可以使用
  • bun:ffi 使用Bun的低开销外部函数接口从JavaScript调用 native code。
  • node:fs node:path Bun原生支持越来越多的Node.js核心模块,以及像Buffer和process这样的globals。

性能测试结果对比:

▲ 服务器端渲染(每秒的 HTTP 请求数)

▲ 加载大型数据表(每秒的平均请求数)

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(3) 发布并加入讨论🔥
发表了资讯
09/23 11:48

Bun v1.0.3 发布,Zig 编写的 JavaScript 运行时

Bun 发布了其最新版本 v1.0.3,这是一个集 JavaScript 运行时、打包器、转译器和包管理器于一体的工具。这次的更新不仅修复了众多已知的问题,还引入了一系列令人期待的新功能。 首先,Bun 在这个版本中增加了对 TypeScript 的 emitDecoratorMetadata 的支持,这意味着开发者现在可以在 Bun 中无缝地使用 Nest.js 这样的框架。Nest.js 是 Node.js 生态系统中的一个受欢迎的框架,而 Bun 对其的支持无疑将进一步扩大其在开发者社...

1
0
发表了资讯
09/12 18:44

JS 三大运行时对比:Deno、Bun 和 Node.js

这篇博客对比了当前流行的三大 JavaScript 运行时环境:Deno、Bun 和 Node.js。 先直观看一下特性上的比较: 除了表格上这些直观可以对比的特性,作者还列出了一些相关的值得关注的要点: Bun 在一定程度上对 Windows 有作支持。(刚看完另一篇博客,Bun 在 Windows 上很难受:https://alemtuzlak.hashnode.dev/why-i-cant-love-bun) Node 已开始搞权限模型。 Node npm list 是有一个外部依赖视图的。 Bun 有半内置的 REPL,需...

12
18
发表了资讯
09/09 11:34

Bun 发布 1.0 正式版本,Zig 编写的 JavaScript 运行时

2023年9月8日,Javascript运行时Bun正式发布1.0版本,标志着这个由前Facebook工程师创建的项目正式进入稳定生产可用阶段。 Bun的愿景是通过深度整合,让Javascript开发“快如闪电”。这个新生力量是否能撼动Javascript界老牌霸主Node的地位,成为下一代前端开发标准?让我们一睹这个新星的威力。 作为Javascript社区中一个相对较新的革新者,Bun致力于解决碎片化工具过多导致的开发低效问题。它将运行时、打包工具、测试框架等功...

24
5
发表了资讯
08/25 17:12

Bun 0.8.1 版本发布,修复上一版本的问题

Bun v0.8.1版本发布。这一版在0.8.0发布一天后发布,重点主要是修复了多个存在的问题和bug。 首先,新版本解决了一个很关键的问题:在处理格式错误的版本名时,bun install会崩溃。这意味着如果用户输入"^0.0.2rc1"等无效版本标识符,系统会停止运行。在Bun v0.8.1中,开发者团队成功地修复了这个问题,使得bun install面对这类输入不会再崩溃。这对于用户来说,无疑增加了操作的稳定性和可靠性,提高了整体的用户体验。 此外,...

0
1
发表了资讯
08/07 12:10

Bun 0.7.3 版本发布:代码覆盖率、测试筛选等多项新功能

Bun是一个令人惊叹的快速的JavaScript运行时、打包器、转译器和包管理器,集多种功能于一身。在过去的几个月里,Bun团队频繁发布更新,不断提升Bun的强大与稳定。Bun 0.7.3版本带来了哪些重要更新呢?让我们来看看。 测试覆盖率报告 Bun测试现在内置支持代码覆盖率报告。只需添加--coverage参数,就可以在终端看到覆盖率报告。这对检查代码质量、发现潜在错误非常有帮助。未来版本还将提供更加详细的序列化报告。 bun test -...

0
1
发表了资讯
07/22 08:57

新型高速 JavaScript 运行时 Bun 0.7 正式发布

近日,新型JavaScript运行时Bun正式发布了0.7版本,带来了重大的升级。据悉,Bun是一个配套齐全的JavaScript解决方案,集运行时、打包器、转译器和包管理器于一体,追求极致的运行速度。此次更新主要集中在与Node.js的兼容性提升和新功能支持上。 首先,Bun宣布与流行的前端打包工具Vite实现了初步兼容。开发者现在可以使用Bun直接运行Vite项目,享受热更新等方便功能,无需进行额外配置。不过由于Bun和Vite内部机制不同,Vite目...

1
4
发表了资讯
05/18 07:59

Bun v0.6.0 发布,Zig 编写的 JavaScript 运行时

根据官方说法,Bun 0.6.0 版本是迄今为止 Bun 最大的一个更新版本。 最新版本的 Bun 现在有一个内置的 JavaScript 和 TypeScript 捆绑器和简化器,可以用它来捆绑前端应用程序或将你的代码捆绑成一个独立的可执行文件。 Bun 0.6.0 也一直在忙着提高性能和修复 bug:writeFile()在 Linux 上的速度提高了 20%、对Node.js 兼容性和 Web API 兼容性进行了大量的 bug 修复、支持 TypeScript 5.0 语法,并对bun install进行了各种修复...

12
5
发表了资讯
2022/08/26 07:23

Bun 获 700 万美元资金并成立公司,承诺半年内发布稳定版本

新兴的 JavaScript 运行时 Bun 宣布已经获得了一些支持资金。公告指出,旨在支持该项目并将其商业化而成立的公司 Oven 已经筹集了 700 万美元的资金,由风险投资机构 Kleiner Perkins 领投。 Bun 的作者 Jarred Sumner 花了一年多在私人测试版中单独构建该项目。现如今,在发布两个月后,Bun 已在 GitHub 上拥有超过 32000 个 star,Bun 的 discord 服务器上也有 14000 名成员;共有 100 多人为 Bun 做出了贡献。“Bun 是一个非...

18
5
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
3 评论
13 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部