Run your Next.js app on Vite. Deploy anywhere.
Vinext is a Vite plugin that re-implements the Next.js API from scratch. Keep your app/, pages/, and next.config.js as they are. Get a faster dev loop, smaller bundles, and a clean path to deploy on any host.
Up to 2×
faster production builds
Measured against Next.js 16 with Turbopack on a 33-route App Router benchmark app.
~33%
smaller client bundles
185 KB → 125 KB gzipped on the same benchmark. Tree-shaking and a lighter client runtime do the work.
92%
of the Next.js 16 API surface
App Router, Pages Router, RSC, server actions, ISR, middleware, route handlers. Coverage and gaps tracked openly.
Benchmarks are directional, not definitive. See the launch numbers and methodology in the announcement.
The same framework, on a different foundation
Vinext re-implements Next.js as a Vite plugin instead of wrapping its build output. That single decision unlocks a faster toolchain and a much wider set of deployment targets.
Drop-in Next.js
Keep your existing app/, pages/, and next.config.js. The full Next.js 16 API surface is shimmed — App Router, Pages Router, RSC, server actions, ISR, middleware, and the next/* module imports you already use.
Powered by Vite
Fast HMR, native ESM, and the Vite plugin ecosystem. Built on @vitejs/plugin-rsc for React Server Components, and ready for Rolldown — the Rust-based bundler shipping in Vite 8.
Deploy anywhere
Cloudflare Workers is the first deployment target, with one-command deploys via npx @vinext/cloudflare deploy. Vercel, Netlify, AWS, Deno Deploy, and more, work through Nitro, and standalone Node bundles are emitted on demand.
Production features, ready to go
Caching, bindings, image optimization, and pre-rendering all work out of the box on Cloudflare Workers, with sensible defaults you can swap out when you need to.
Platform bindings in your app code
Import env from cloudflare:workers directly inside server components, route handlers, and server actions. Bindings work in dev and production with no proxy layer.
ISR out of the box
Stale-while-revalidate with background regeneration, matching the Next.js 16 CacheHandler interface. Cloudflare Workers Cache serves route-level ISR at the edge, while Workers KV backs the data cache.
Traffic-aware Pre-Rendering
Experimental
Pre-render only the pages real traffic hits, using zone analytics at deploy time. Popular pages get SSG-level latency without building tens of thousands of routes ahead of time.
Image optimization
Local images route through a runtime resize/transcode endpoint that integrates with the Cloudflare Images binding. Remote images use @unpic/react with auto-detection for 28 CDNs.
See it running
Real Next.js apps, rebuilt on every push to main and deployed to Cloudflare Workers. Source is on GitHub.
Migrate in one command
npx vinext init scans your project for compatibility issues, installs the right dependencies, generates a Vite config, and adds vinext scripts alongside your existing Next.js setup. It's non-destructive — next dev keeps working.
vite.config.ts
Configure vinext in Vite
Start with the vinext plugin, then add the adapter for your deployment target. Your routes, components, and Next.js configuration stay exactly where they are.