migrate-to-vinext
Migrates Next.js projects to vinext (Vite-based Next.js reimplementation). Load when asked to migrate, convert, or switch from Next.js to vinext. Handles compatibility scanning, package replacement, Vite config generation, ESM conversion, and deployment setup (Cloudflare Workers natively, other platforms via Nitro).
Install
Install this Claude and Codex skill with the command below. The command stays visible even when copy support is unavailable.
git clone https://github.com/cloudflare/vinext /tmp/vinext && ln -s /tmp/vinext/.agents/skills/migrate-to-vinext ~/.claude/skills/migrate-to-vinext
From README
Migrate Next.js to vinext vinext reimplements the Next.js API surface on Vite. Existing app/, pages/, and next.config.js work as-is — migration is a package swap, config generation, and ESM conversion. No changes to application code required. FIRST: Verify Next.js Project Confirm next is in dependencies or devDependencies in package.json. If not found, STOP — this skill does not apply. Detect the package manager from the lockfile: | Lockfile | Manager | | Uninstall | | --------------------------- | ------- | ------------- | --------------- | | pnpm-lock.yaml | pnpm | pnpm add | pnpm remove | | yarn.lock | yarn | yarn add | yarn remove | | bun.lockb / bun.lock | bun | bun add | bun remove | | package-lock.json or none | npm | npm | npm uninstall | Detect the router: if an app/ directory exists at root or under src/, it's App Router. If only pages/ exists, it's Pages Router. Both can coexist.
More skills
cloudflare-browser
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket.
cloudflare-browser
Control headless Chrome via Cloudflare Browser Rendering CDP WebSocket.
add-autogate
Step-by-step guide for adding a new autogate to workerd for gradual rollout of risky changes, including enum...