Cloudflare AI · 官方

VoidZero 加入 Cloudflare

VoidZero is joining Cloudflare

二〇二六年六月七日 · 英文原文

VoidZero(Vite、Vitest、Rolldown、Oxc 和 Vite+ 的开发公司)宣布加入 Cloudflare,其所有团队成员也将加入。Vite 等核心项目将继续保持 MIT 许可、开源、供应商无关和社区驱动。Cloudflare 承诺投入 100 万美元设立 Vite 生态系统基金,由 Vite 核心团队管理。Vite 每周下载量约 1.29 亿次,Cloudflare Vite 插件(@cloudflare/vite-plugin)每周下载量接近 1400 万次。Cloudflare 计划将其 CLI(`cf`)迁移至基于 Vite 构建,并开源 Void 平台。

VoidZero 加入 Cloudflare

Vite、Vitest、Rolldown、Oxc 和 Vite+ 背后的公司 VoidZero 正在加入 Cloudflare。作为这一变化的一部分,VoidZero 的所有团队成员也将加入 Cloudflare。在说其他事情之前,我们想先明确最重要的一点:Vite、Vitest、Rolldown、Oxc 和 Vite+ 将继续保持开源、供应商无关和社区驱动。这一点不会有任何改变。

Cloudflare 的使命是帮助构建更好的互联网。而更好的互联网就是开放的互联网。开发者需要选择,框架需要中立的基础,应用程序需要可移植。期望整个 Web 生态系统围绕单一供应商构建是不合理的。最重要的工具和框架在设计上就是可移植的。

Vite 是整个 JavaScript 生态系统中少数几个达成共识的基础工具之一。它凭借快速、优秀、可移植和供应商中立赢得了这一地位。Cloudflare 帮助构建更好互联网的最佳方式之一,就是投资于这个基础性的开源工具链——一个让互联网对所有人都更好的工具链,而不仅仅是使用 Cloudflare 或选择托管在我们这里的用户。

过去几年,我们投入了大量资源,使 Cloudflare 成为在开发者平台上构建和运行网站、应用程序和 agent 的最佳场所。但最终,这个选择始终在你手中。你可以在任何地方运行你的 Vite 应用程序。

这对 Vite 意味着什么

今天的消息为 Vite 提供了更多资源来持续增长,而让 Vite 成为 Vite 的那些特质保持不变:

今年早些时候 Astro 加入 Cloudflare 时,我们做出了同样的承诺。Astro 仍然是开源的,并且仍然可以部署到任何地方。团队仍在按照他们既定的路线图推进。这个承诺对 Vite 来说更为重要,因为 Vite 不是一个框架。Vite 是许多框架的基础:Vue、SvelteKit、Nuxt、Astro、Solid、Qwik、Angular、React Router、TanStack Start。甚至 Next.js 现在也有一个基于 Vite 的实现 vinext。Vite 已经成为 JavaScript 生态系统的共享基础。

我们的首要目标是维护让 Vite 获得如此广泛采用的信任。不是通过我们在这里的言辞,而是通过每天在支持和开发这些项目中的实际行动来证明。同时,在支持开源和共享生态系统基础方面,我们也希望言行一致。作为本次公告的一部分,Cloudflare 承诺投入 100 万美元设立 Vite 生态系统基金,用于支持维护者和贡献者,该基金由 Vite 核心团队管理。Vite 比 VoidZero 或 Cloudflare 更宏大,帮助构建它的人应该成为未来的一部分。

Vite 作为基础

Vite 和 Cloudflare 团队在此公告之前就已经开始合作,始于 2024 年的 Vite Environment API。Environment API 让 Vite 在开发期间可以在 Node.js 之外的环境中运行服务器代码。我们与 Vite 团队密切合作设计了它,然后在此基础上构建了 Cloudflare Vite 插件。当你使用 Cloudflare 插件运行 vite dev 时,你的服务器代码会在 workerd 内部运行,这是与生产环境中驱动 Workers 相同的开源运行时。Durable Objects、D1、KV、R2、Workflows、Workers AI、Agents、Service Bindings、Workers RPC——所有这些都在本地以与生产环境相同的运行时模型运行。

长期以来,在非 Node 运行时上开发的代价是本地开发感觉像是生产环境的劣化版本。Environment API 消除了这一代价,而无需强迫任何人采用 Cloudflare 特定的开发服务器。任何想要接入 Vite 的运行时都可以做同样的事情。这种设计——Vite 中的通用机制加上特定提供商的实现——已被证明效果良好,也是我们希望继续发展的方向。

当我们看到 Cloudflare Vite 插件的采用率飙升时,我们就知道找对了方向:Vite 的采用曲线是目前生态系统中值得关注的现象之一。截至本文撰写时,Vite 每周下载量约为 1.29 亿次。Cloudflare Vite 插件(@cloudflare/vite-plugin)每周下载量接近 1400 万次。如果一年前有人告诉我们 Cloudflare Vite 插件的下载量能达到 Vite 本身的 10% 以上,我们不会相信。

发生了什么?AI 发生了。现在创建的软件比以往任何时候都多,其中很多始于 AI 生成的代码。这些应用程序需要一个默认的技术栈和一个运行的地方。Agent 编码的应用程序正在选择 Vite,并且越来越多地选择在 Cloudflare 上运行 Vite。

AI 正在改变我们编写软件的方式

过去,开发者是开发服务器、打包工具、linter、格式化工具和 CLI 的唯一用户。现在情况不再如此:agent 也在持续使用它们。它们搭建项目、运行开发服务器、读取错误、编写测试、lint 和格式化代码、部署预览并迭代。很多 AI 生成的应用程序已经以 Vite 应用起步,因为 Vite 快速、易于理解,并且与 agent 在训练数据中看到的内容广泛兼容。

快速的反馈循环一直很重要。当使用 agent 编写软件时,这变得更加关键:快速的构建,因为 agent 比人类迭代更多;快速的测试,因为 agent 会不断重新运行测试套件来验证自己的工作;快速的 lint 和格式化,因为这些工具成为护栏;清晰结构化的错误,因为 agent 需要读取并据此行动;一致的 CLI,因为小的不一致会导致大的弯路。

整个 VoidZero 工具链就是为这种循环而构建的。Vitest、Rolldown、Oxc、Oxlint 和 Oxfmt 各自都是其类别中最快的工具之一,并且当 agent 反复运行时它们表现良好。Vite+ 将这些组件整合到一个工具链中,拥有一个 CLI、一个配置模型和更少的活动部件。这使得开发循环对人类来说更容易理解,对 agent 来说更容易可靠地驱动。

我们自己在吃自己的狗粮。Cloudflare 仪表盘就是基于 Vite 构建的。Oxlint 已经在 Cloudflare 代码库中节省了数天的工程时间。来自 Astro 团队的 agent 框架 Flue 也在转向以 Vite 为基础。Flue 可以在 Node.js、Cloudflare Workers、GitHub Actions、GitLab CI/CD 等环境中运行 agent,而 Cloudflare 目标现在使用官方的 Cloudflare Vite 插件和 workerd 集成。Vite 正在成为 Cloudflare 内部的默认应用基础。

Vite 正在成为全栈

几年前,构建工具的工作很简单:获取源文件,生成 bundle,交付。这对于现代应用程序来说已经不够了,尤其是在其中一些应用程序本身就是 agent 的世界里。一个现代应用程序包括服务器端渲染的路由、API、后台任务、队列、数据库、对象存储、实时通信、认证,以及越来越多的 agent 和 AI 能力。"构建"不再是故事的终点。它是部署的开始,而部署必须理解所有这些组件。

这意味着 Vite 必须超越构建工具。它需要理解更多的应用程序,同时保持让 Vite 成功的核心:速度、简洁和可移植性。Void,一个为 Vite 设计的部署平台,一直是这些想法的另一个试验场。它帮助探索了现代应用程序框架应该拥有什么、部署应该是什么感觉,以及整个应用程序生命周期有多少可以围绕一个工具链统一起来。

我们从这项工作中收获良多。现在的工作是将这些经验放在正确的位置。有些属于 Vite 本身,作为供应商无关的原语:用于后端、API、agent 和部署的一流抽象和钩子,任何供应商都可以实现。其他经验属于 Cloudflare 内部。Cloudflare 将在 Workers 和我们开发者平台的其余部分提供这些钩子的一流实现。

尽管一些 Vite 维护者加入了 Cloudflare,但对 Vite 本身的更改将继续通过与其他 Vite 贡献相同的开放贡献流程进行。添加到 Vite 本身的功能不应是 Cloudflare 特定的。它们将在 Vite 工作的任何地方工作。

让 Cloudflare 向 Vite 靠拢

同样的原则也塑造了我们如何看待 Cloudflare 自身工具的未来。我们不是在让 Vite 向 Cloudflare 的方向发展。我们正在做相反的事情:将 Cloudflare 的应用工具迁移到 Vite 上,使其构建在开发者已经熟悉的工作流程之上。

我们最近发布了 cf 的技术预览版,这是一个面向整个 Cloudflare 平台的新统一 CLI。Vite 将成为我们应用 CLI 体验的基础。最终目标是为整个 Cloudflare 提供一个一致的 CLI,无论你是在处理 Workers、R2、D1、Agents 还是其他任何东西,都具有相同的操作体验。如果我们做对了,Cloudflare CLI 应该感觉像 Vite,而不是一个附加在 Vite 旁边的独立东西。cf dev 应该是 vite dev 的超集。相同的速度、相同的热模块替换、相同的插件模型,加上你需要的 Cloudflare 运行时和绑定。cf build 应该原生理解 Vite 项目,无需适配器转换。cf deploy 应该让将 Vite 应用部署到 Cloudflare 变得简单。如果你今天正在运行 Vite,通往 Cloudflare 的路径将感觉像是替换为你已经熟悉的命令的超集。相同的项目结构。相同的 Vite 工作流程。当你需要时,整个 Cloudflare 开发者平台随时可用。

接下来会发生什么

短期内,Vite 用户或基于 Vite 构建的框架没有任何变化:Vite、Vitest、Rolldown、Oxc 和 Vite+ 继续发布。VoidZero 团队继续贡献和领导它们。Cloudflare Vite 插件持续改进。Environment API 以及更广泛的"在本地正确的运行时中运行你的服务器代码"的故事会越来越好,包括对非 Cloudflare 运行时也是如此。

长期来看:我们开始将 Cloudflare CLI 迁移到直接基于 Vite 构建的体验上。Vite 将获得新的、干净的、供应商无关的原语,用于全栈应用和 agent,这些原语在任何平台上对所有人都有效。随着时间的推移,我们打算开源 Void 平台,以便其他人可以从中学习,并在 Vite 和 Cloudflare 之上构建自己的平台。

我们将以公开的方式与社区一起完成所有这些工作。就像 Vite 一直以来的构建方式一样。

欢迎 VoidZero

Vite、Vitest、Rolldown、Oxc 和 Vite+ 的存在,是因为一个深厚的开源贡献者生态系统投入了多年的工作。这些项目已经成为 Web 构建方式的基础,我们感谢所有帮助它们走到今天的人。感谢每一位在此过程中贡献代码、审查、问题、文档、插件、集成和支持的人。

我们很高兴欢迎 VoidZero 团队加入 Cloudflare,也很高兴为这些项目投入更多资源。我们现在的工作是帮助它们成长、保持开放,并为整个 JavaScript 生态系统提供动力。Vite 继续做 Vite。Cloudflare 来帮忙。

如果你想今天就在 Cloudflare 上尝试 Vite,请运行:

npm create vite@latest
npx wrangler deploy
译自 Cloudflare AI · 官方 · 录于 二〇二六年六月七日