Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
翻訳待ち
Vite plugin that reimplements the Next.js API surface — deploy anywhere
翻訳待ち
Loading the full README.
Read the full README ↗Run Next.js applications on Vite, with Cloudflare Workers as the primary deployment target.
Website: vinext.dev
Documentation: vinext.dev/docs
Read the announcement: How we rebuilt Next.js with AI in one week
Under active development. vinext supports substantial Next.js applications today, but it is not yet a drop-in replacement for every application or production workload. Expect compatibility gaps, especially in newer App Router features, and evaluate it against your own application before adopting it.
vinext reimplements the Next.js API surface on Vite rather than consuming next build output. It supports both the App Router and Pages Router, React Server Components, Server Actions, middleware, route handlers, ISR, static export, and the most commonly used next/* modules. Cloudflare Workers has the deepest integration; Node.js and other platforms are available with different levels of support.
output: "export", and standalone Node.js outputnext/link, next/image, next/navigation, next/headers, next/cache, and the Metadata APIvinext check, vinext init, and the vinext Agent SkillThese are active compatibility areas, not permanent exclusions:
"use cache" is partially implemented, but full cacheComponents behavior is still incomplete. Cache profiles, tags, partial shells, resume behavior, prefetching, and some dev/build cache semantics do not yet match Next.js in every case.sharp, resvg, satori, lightningcss, and @napi-rs/canvas can fail in Vite's RSC development environment. Production builds support more of these cases than development mode.preferredRegion route config is ignored, and runtime doesn't choose where a route runs (outside cacheComponents, a runtime = "edge" App Router page is never ISR-cached, as in Next.js), and some recently introduced or undocumented Next.js behavior may not yet be reproduced.Run vinext check against an existing application before migrating. If a gap is not listed here, check the open issues or file a focused reproduction.
Use the official setup commands below. They are the recommended way to create or migrate a vinext project because they configure dependencies, scripts, Vite, and your deployment target for you.
Start a new project with create-vinext-app:
pnpm create vinext-app@latest my-app
Migrate an existing Next.js project with vinext init:
npx vinext init
Prefer vinext init for a direct, repeatable migration. If you want an AI agent to investigate compatibility issues and guide the migration, vinext also includes an optional Agent Skill. It works with Claude Code, OpenCode, Cursor, Codex, and dozens of other AI coding tools:
npx skills add cloudflare/vinext
Then open your Next.js project in any supported tool and say:
migrate this project to vinext
The skill handles compatibility checking, dependency installation, config generation, and dev server startup. It knows what vinext supports and will flag anything that needs manual attention.
npm install vinext
npm install -D vite @vitejs/plugin-react
If you're using the App Router, also install:
npm install react-server-dom-webpack
npm install -D @vitejs/plugin-rsc
Add a Vite config:
import { defineConfig } from "vite";
import vinext from "vinext";
export default defineConfig({
plugins: [vinext()],
});
Then use Vite for development and builds:
{
"scripts": {
"dev": "vite dev",
"build": "vite build",
"start": "vinext start"
}
}
npx vite dev # Development server with HMR
npx vite build # Production build
npx @vinext/cloudflare deploy # Build and deploy to Cloudflare Workers
With Vite+, use vpx @vinext/cloudflare deploy, or
vp exec vinext-cloudflare deploy when running the locally installed bin.
The vinext() plugin auto-detects your app/ or pages/ directory and loads next.config.js.
Your existing pages/, app/, next.config.js, and public/ directories work as-is. Run vinext check first to scan for known compatibility issues, or use vinext init to automate the full migration.
This is the beginning of the README. Read the rest at the original. Read the full README ↗