双路由器
App Router 与 Pages Router
开发与生产构建均支持。文件系统路由、SSR、客户端水合,在 Workers 上对两种路由器都有效。
VITE × NEXT.JS · CLOUDFLARE WORKERS
vinext 在 Vite 上重新实现 Next.js 的 API 表面——而不是消费next build的产物。App Router、Pages Router、RSC、Server Actions、中间件、ISR,全部在 Vite 工具链上原生运转,并最深度地集成 Cloudflare Workers。
正在积极开发中 · 预期兼容性缺口,采用前请评估
$ pnpm create vinext-app@latest my-app
┌ 依赖安装完成 · Vite + @vitejs/plugin-react 就绪
├ 部署目标:Cloudflare Workers(cloudflare.config.ts 已生成)
└ 完成。cd my-app 即可开始开发
Next.js 16 API 表面覆盖
Vitest 单元与集成测试
Playwright E2E 测试
next/* 模块垫片
vinext 同时支持两种路由器与完整的现代 Next.js 服务端能力。Cloudflare Workers 的集成最为深入,Node.js 和其他平台也提供不同程度的支持。
双路由器
开发与生产构建均支持。文件系统路由、SSR、客户端水合,在 Workers 上对两种路由器都有效。
服务端渲染
React Server Components、Server Actions、路由处理器与中间件——Next.js 16 的核心服务端能力。
输出形态
静态生成、增量静态再生、output: "export",以及自托管的 standalone Node.js 输出。
模块兼容
next/link、next/image、next/navigation、next/headers、next/cache,以及完整的 Metadata API。
Workers 原生
Bindings、KV 缓存适配器与按请求图片优化,一条命令完成构建与部署。
迁移工具
兼容性扫描、一键迁移,以及可供 AI agent 驱动的技能包。
官方初始化命令会替你配置依赖、scripts、Vite 以及部署目标——这是创建或迁移 vinext 项目的推荐方式。
用 create-vinext-app 创建带 Tailwind CSS 的 TypeScript App Router 项目,默认已准备好部署到 Cloudflare Workers。
vinext init 一条命令自动化完成迁移:兼容性扫描、依赖安装、配置生成,全程非破坏性。
vinext 附带可选的 Agent Skill,可与 Claude Code、OpenCode、Cursor、Codex 等数十种 AI 编程工具配合,自动排查兼容性问题。
pnpm create vinext-app@latest my-app
npx vinext init
npx skills add cloudflare/vinextimport { defineConfig } from "vite";
import vinext from "vinext";
export default defineConfig({
plugins: [vinext()],
});这些示例部署在 Cloudflare Workers 上,并在每次推送到 main 时更新——直接打开,感受 vinext 的实际表现。
| 示例 | 说明 | URL |
|---|---|---|
| App Router Playground | Vercel 的 Next.js App Router Playground 跑在 vinext 上 | app-router-playground.vinext.workers.dev |
| Hacker News | HN 克隆(App Router、RSC) | hackernews.vinext.workers.dev |
| Nextra Docs | Nextra 文档站(MDX、App Router) | nextra-docs-template.vinext.workers.dev |
| App Router(最小) | Workers 上的最小 App Router | app-router-cloudflare.vinext.workers.dev |
| Pages Router(最小) | Workers 上的最小 Pages Router | pages-router-cloudflare.vinext.workers.dev |
| Static export | 混合 App/Pages Router 站点,仅作为静态资源提供 | static-export.vinext.workers.dev |
| RealWorld API | REST API 路由示例 | realworld-api-rest.vinext.workers.dev |
| Benchmarks Dashboard | 构建性能随时间跟踪(基于 D1) | vinext.dev/benchmarks |
Vite 已经成为现代 Web 框架的默认构建工具——快速的 HMR、干净的插件 API、原生 ESM,以及不断壮大的生态。随着 @vitejs/plugin-rsc 加入对 React Server Components 的支持,现在终于可以在 Vite 上构建一套完整的 RSC 框架了。
vinext 在 Vite 上重新实现 Next.js 的 API 表面,让已有的 Next.js 应用可以在另一套工具链上运行。 到目前为止,结论是:相当一部分规模的应用确实可以。 它到处都能运行——原生支持 Cloudflare Workers,并且可以通过 Nitro 部署到 Vercel、Netlify、AWS、Deno Deploy 等更多平台。
随处部署
原生支持 Cloudflare Workers,其他平台可通过 Nitro 获得,更多原生适配器已在规划中。
务实兼容
而非逐 bug 对齐。目标覆盖 95% 以上的真实世界 Next.js 应用,依赖未文档化 Vercel 行为的边缘情况有意不支持。
只支持最新
面向 Next.js 16.x,不支持旧版本中已废弃的 API。
渐进式采用
装上插件,修掉报错,部署上线。
在 Vite 上从零重新实现 Next.js API 表面
适合 · 想要更轻量的 Vite 工具链、不需要每一个 Next.js API 的应用
权衡 · 更快的构建与更小的包体,长尾特性覆盖较少
把 next build 的产物适配到 AWS、Cloudflare 等平台
适合 · 想要更稳妥、更经过验证的方案
权衡 · 资历更深、更成熟,覆盖的 Next.js API 面更广
部署到任意 Node.js 服务器、Docker 容器或静态导出
适合 · 对 Next.js 工具链满意、只是想跑到 Vercel 之外
权衡 · 最简单的路径,零迁移成本