68K star!24年替换Node.js的最佳选择

Node.js已经有了超过14年的历史,虽然它一直有着不错的表现,但是关联的JavaScript 工具链正变得缓慢而复杂。我们今天要介绍的开源项目是一个快速的全能工具包,用于运行、构建、测试和调试 JavaScript 和 TypeScript,它就是:Bun

Bun是什么

Bun 的核心是一个快速的 JavaScript 运行时,旨在取代 Node.js。但它并不仅仅是一个运行时,它也是一个包管理器(类似 Yarn、 NPM、 PNPM),一个构建工具(类似 Webpack、 ESBuild、 Parcel) ,一个测试运行器,一个全能的工具包。它是用 Zig 语言编写的,并在底层由 JavaScriptCore 提供支持,大大减少了启动时间和内存使用。

从发布就一直热度高涨,是了2022年最火的前端项目,2023年的评选中也是第二名。

Bun 的目标很简单,就是要消除JavaScript工具链的缓慢和复杂性,但同时保留JavaScript本身的优点。Bun希望让开发者继续使用喜欢的库和框架,并且无需放弃已经熟悉的规范和约定。Bun一直追求极致的性能,在各个方面都要比Nodejs快不少。

以下是项目github 的 star 历史数据,一直保持着超高的增长速度。

为什么用 Bun?

如果犹豫要不要试一下,那不如先来看看下面这些点能不能吸引你:

  1. 速度:Bun 旨在提供高性能,无论是启动时间、执行速度还是安装依赖包的速度。进程的启动速度比Nodejs快4倍。
  2. 兼容性 Nodejs:Bun 致力于与现有的 JavaScript 生态系统兼容,包括 Node.js 的软件包。
  3. All in one:Bun 可以让你省下很多工具,因为内置了,比如npx,webpack,babel,jest等等
  4. 原生的 Web API:Bun 提供了许多浏览器中的 Web API,这使得编写服务器端代码与编写客户端代码更为相似。

使用Bun

Bun 提供了非常多的安装方式,对于Linux和MacOS用户,可以使用 curl、npm、Homebrew,docker等方式安装:

bash 复制代码
# with install script (recommended)
curl -fsSL <https://bun.sh/install> | bash

# with npm
npm install -g bun

# with Homebrew
brew tap oven-sh/bun
brew install bun

# with Docker
docker pull oven/bun
docker run --rm --init --ulimit memlock=-1:-1 oven/bun

Windows的用户要求是win10 version 1809以上(不保证稳定性),可以通过Scoop来安装:

bash 复制代码
# WARNING: No stability is guaranteed on the experimental Windows builds
scoop bucket add versions
scoop install bun-canary

安装完成后,执行 bun --version ,看到输出版本号就是安装成功了。

接下来我们可以跑一个helloworld体验一下,可以试用 bun init命令

修改一下 index.ts 的内容

javascript 复制代码
const server = Bun.serve({
  port: 3000,
  fetch(req) {
    return new Response("Bun!");
  },
});

console.log(`Listening on <http://localhost>:${server.port} ...`);

启动服务 bun index.ts ,就可以看到起的服务了

用起来上手不难,和Nodejs的使用接近。即使不把 Bun 用作运行时,Bun 内置的软件包管理器也能加快你的开发工作流程。Bun的安装速度比 npm、yarn 和 pnpm 快好几个数量级,还可以用 bun run 来替换 npm run,每次运行命令都能节省 150 毫秒的时间。

我只是抛砖引玉,更多详细的使用就等着大家自己去尝试吧。

项目信息

相关推荐
崔庆才丨静觅4 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60614 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了4 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅4 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅5 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅5 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment5 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅6 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊6 小时前
jwt介绍
前端
爱敲代码的小鱼6 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax