Ce qui se passe
En février, Vinext était une expérience : un ingénieur de Cloudflare et un agent de code avaient passé une semaine à reproduire Next.js au-dessus de Vite. Sept mois plus tard, le projet sort en 1.0 et Cloudflare le présente comme prêt pour la production, déjà utilisé par des clients sur des applications à fort trafic. Le but : prendre une application Next.js existante et la déployer ailleurs, sur Cloudflare Workers (offre gratuite comprise), Netlify ou AWS Lambda.
Ce que couvre la 1.0
- Les deux routeurs, et les applications hybrides : App Router et Pages Router, avec React Server Components, Server Actions, routes d'API, route handlers, middleware et navigation côté client.
- Tout le cycle de vie d'une page : rendu serveur, prérendu au build via
generateStaticParams()etgetStaticPaths(), export statique (output: "export"), ISR par page, revalidation en arrière-plan ou à la demande, invalidation par chemin ou par tag. - Le cache partagé entre les deux routeurs, avec prise en charge du Workers Cache.
- Le traçage compatible Next.js : OpenTelemetry et Sentry continuent de fonctionner.
- La surface publique
next/*: authentification, MDX, optimisation d'images, polices, métadonnées, variables d'environnement.
Côté fiabilité, Cloudflare annonce plus de 99 % de compatibilité sur les tests des fonctions les plus demandées, hors Cache Components. La suite de tests de bout en bout de Next.js tourne chaque nuit contre Vinext, et un agent relit chaque matin les commits de la branche canary de Next.js pour ouvrir des tickets sur ce qui pourrait diverger.
Le cache chaud
Prérendre des dizaines de milliers de pages au build coûte des heures, en grande partie pour des pages que presque personne ne visite. Vinext déplace ce travail :
- la nouvelle version du Worker est envoyée et déployée à 0 % du trafic de production ;
- les pages à prérendre, celles désignées par les primitives Next.js habituelles et celles que Vinext repère comme très visitées, sont demandées à cette version précise ;
- une fois le cache rempli, la version est promue.
Le premier visiteur tombe sur un cache chaud, et le build ne rend plus la longue traîne. Cette partie est propre au déploiement sur Cloudflare.
Les limites
- La directive
"use cache", qui porte les Cache Components mis en avant par Next.js 16, n'a qu'une prise en charge partielle. Cloudflare assume : la plupart des équipes interrogées ne s'en servent pas. - Le projet reproduit un comportement, pas seulement des noms de fonctions :
un
revalidatePathdoit agir sur le rendu, le cache et les requêtes suivantes exactement comme dans Next.js. C'est là que les écarts se cachent, d'où l'intérêt de tester son application plutôt que la liste des API.
Comment s'y prendre
# Diagnostic, puis configuration de Vite et du déploiement
npx vinext check && npx vinext init
# Nouveau projet
npm create vinext-app@latest my-app
# Déploiement sur Workers avec cache chaud
npx @vinext/cloudflare deploy --warm-cachevinext init conserve la structure du projet Next.js. La matrice de
compatibilité à jour est sur vinext.dev.
Source : Next.js applications, powered by Vite: introducing Vinext 1.0, Cloudflare, 28 septembre 2026. Code : github.com/cloudflare/vinext.