Cloudflare发布AI辅助开发的实验性Next.js替代方案

点击查看原文>

最近,Cloudflare 发布了vinext,这是 Next.js 的一个实验性重新实现,基于Vite而非Turbopack。该项目由一名工程师在大约一周内使用 AI 开发完成,API token 的成本为 1100 美元。此外,该公司将其定位为一个即插即用的 Next.js 替代品,并且针对 Cloudflare Workers 做了优化。不过目前,该项目被标记为实验性和未经大规模测试。

从早期的基准测试看,该项目前景光明,不过也有一些需要注意的地方。在一个包含 33 个路由的测试应用中,使用 Vite 8 打包器 Rolldown 的生产构建耗时不到 1.67 秒,而使用 Turbopack 的 Next.js 16 则需要 7.38 秒。速度提升了 4.4 倍。客户端软件包的大小也从 168.9KB 减少到了 72.9KB,小了 57%。但 Cloudflare 提醒说,这些数字是“方向性的,不是确定性的”,因为它们基于单一测试环境,而不是现实世界中的生产应用。

图片来源:Cloudflare博文

领导开发这个项目的 Cloudflare 工程师 Steve Faulkner 在博文中描述了其工作流程:最初几个小时在 OpenCode 中使用 Claude 定义架构,然后迭代执行任务,由 AI 编写实现和测试。当测试通过时,合并代码。当测试失败时,AI 接收错误输出并迭代代码。800 多次 AI 会话便生成了大部分的代码,但每一行都通过了质量检查:1700 多个 Vitest 测试,从 Next.js 测试套件移植过来的 380 个 Playwright E2E 测试,TypeScript 检查和代码分析。

vinext 实现了 Next.js 的 API 接口、路由、服务器渲染、React 服务器组件、服务器操作、缓存、中间件(作为 Vite 的插件,而不是封装 Next.js 的输出)。这使得它可以在任何支持Vite Environment API的平台上运行,尽管 Cloudflare Workers 是其主要的部署目标。该公司声称,代码库中大约 95%的代码是平台无关的 Vite 代码。

部署到 Workers 只需要一个命令:vinext deploy。App Router 和 Pages Router 都完全支持客户端水合。缓存方面,vinext 包括一个用于 ISR(增量静态再生)的 KV 缓存处理器。在线示例包括一个App Router游乐场、一个Hacker News克隆CIO.gov(这是美国政府的一个 beta 站点,由 National Design Studio 运营)。

一个重要的限制是:vinext 尚未支持构建时静态预渲染。Next.js 在 next build 期间使用 generateStaticParams()预渲染页面。vinext 只支持 ISR,缓存并在第一次请求后重新验证页面。不过,静态预渲染已在路线图上

Cloudflare 提出了一个名为 Traffic-aware Pre-Rendering(TPR)的替代方案,目前还是实验性的。TPR 在部署时查询 Cloudflare 的区域分析,并且仅预渲染接收实际流量的页面。对于一个有 10 万个产品页面的网站,其中 90%的流量是访问其中的 50-200 个页面,这些页面将被预渲染,其余的则回退到按需 SSR。这只适用于已接入 Cloudflare 网络且具备现有分析数据的网站。

社区的反馈已经超出了实现质量的范畴。在Reddit的r/vibecoding论坛上,开发者们质疑其可维护性影响,有参与者评论道:“最后一句话很随意地承认了该代码难以由人类进行维护这一事实。”此言是针对 Cloudflare 宣称 AI 无需中间抽象层,因其“能将整个系统置于上下文之中”的说法。另有人指出:

一周开发完成意味着没有人真正地浏览过代码。

Hacker News上的反馈也反映出了类似的怀疑。一位评论者指出了文档悖论:

你越完善地记录工作成果,越清晰地定义契约,他人就越容易复制你的工作。若没有 Next 自主研发的测试工具,Cloudflare 根本不可能实现这一目标。

还有一位评论者指出,Vite 承担了最繁重的工作:

vinext 大约 95%的代码是纯 Vite。真正的成果是人为构建的 Vite。

需要注意的是,该项目目前还是一个实验性的项目。正如 Cloudflare 的博文所描述的那样:

vinext 是实验性的。它甚至还不到一周大,还没有经过任何有意义的大规模流量的实战测试。如果你正在评估将其用于生产应用程序,请务必谨慎行事。

README列出了明确不支持的特性和已知的限制。Cloudflare 正在与其他托管服务商合作推广该工具链;他们不到 30 分钟就为 Vercel 完成了概念验证部署,但该项目的长期可行性仍然存疑。

对于有兴趣参与测试的开发者,vinext 提供了一个用于迁移的 Agent Skill,可与 Claude Code、OpenCode、Cursor 及类似的工具搭配使用:npx skills add cloudflare/vinext。或者,也可以使用 npx vinext init 手动处理迁移。

声明:本文为 InfoQ 翻译,未经许可禁止转载。

原文链接:https://www.infoq.com/news/2026/03/cloudflare-vinext-experimental/


本文来源:InfoQ