3min Devops

Cloudflare bouwt AI-gedreven alternatief voor Next.js

Cloudflare bouwt AI-gedreven alternatief voor Next.js

Cloudflare heeft in korte tijd een experimenteel alternatief voor Next.js ontwikkeld, grotendeels met behulp van generatieve AI. Het project, vinext geheten, is in een week gebouwd door één engineer in samenwerking met een AI-model. Het implementeert circa 94 procent van de Next.js-API. De ontwikkelkosten bedroegen naar schatting 1.100 dollar aan AI-tokens.

De aanleiding voor het experiment ligt niet in het demonstreren van AI-capaciteiten, maar in een structureel probleem rond Next.js-deployments. Het populaire React-framework is sterk geoptimaliseerd voor gebruik op Vercel. Wie Next.js met volledige functionaliteit wil draaien op andere serverless platforms, zoals Cloudflare Workers, Netlify of AWS Lambda, moet de build-output aanpassen met aanvullende tooling. Volgens Cloudflare leidt dit tot extra complexiteit en kwetsbaarheid, vooral bij nieuwe Next.js-versies.

De Next.js-makers werken aan officiële deployment adapters, maar die aanpak is nog in ontwikkeling en blijft afhankelijk van Turbopack, de door Vercel ontwikkelde bundler. Daarnaast draait de ontwikkelomgeving van Next.js uitsluitend op Node.js, waardoor platform-specifieke API’s van bijvoorbeeld Cloudflare lastig te testen zijn tijdens development.

Eerdere pogingen om dit probleem te ondervangen, zoals het OpenNext-project, hebben laten zien hoe moeilijk het is om voort te bouwen op de output van Next.js zonder controle over de onderliggende toolchain. Onvoorspelbare wijzigingen tussen versies maken zulke oplossingen volgens Cloudflare fragiel en onderhoudsintensief.

Architectuurwijziging in plaats van aanpassing

Met vinext koos Cloudflare daarom voor een andere benadering. In plaats van Next.js te adapteren, is de API grotendeels opnieuw geïmplementeerd bovenop Vite, een buildtool die al breed wordt ingezet door andere webframeworks. Vinext fungeert als een drop-in vervanging voor Next.js. Bestaande applicaties kunnen vaak blijven werken zonder aanpassingen aan projectstructuur of configuratie, terwijl de build en runtime niet langer afhankelijk zijn van Turbopack.

Vrijwel alle code is door AI gegenereerd, waarbij de engineer de rol van architect en regisseur vervulde. Het proces begon met het uitwerken van een globale architectuur, waarna de AI stap voor stap onderdelen van de Next.js-API implementeerde. Daarbij werd intensief gebruikgemaakt van bestaande tests uit de Next.js-codebase om compatibiliteit te verifiëren. Menselijk ingrijpen bleef nodig om verkeerde aannames te corrigeren.

Eerste benchmarks tonen duidelijke buildvoordelen

Hoewel het project expliciet als experimenteel wordt gepresenteerd en nog niet handmatig is gereviewd, zijn de eerste resultaten opvallend. Interne benchmarks tonen buildtijden die tot ruim vier keer lager liggen dan bij Next.js 16 met Turbopack, terwijl de client-bundles aanzienlijk kleiner uitvallen. De cijfers zijn gebaseerd op één testapplicatie en vooral richtinggevend.

Vinext richt zich voorlopig primair op Cloudflare Workers als deploymentdoel. Met één commando wordt een applicatie gebouwd en uitgerold, inclusief ondersteuning voor server-side rendering, React Server Components en client-side navigatie. Caching en Incremental Static Regeneration zijn standaard aanwezig via Cloudflare KV. Daarnaast experimenteert Cloudflare met traffic-aware pre-rendering, waarbij alleen pagina’s met aantoonbaar verkeer vooraf worden gegenereerd om lange buildtijden te vermijden.

Ondanks de experimentele status draaien er inmiddels enkele productietoepassingen op vinext, waaronder een overheidswebsite. Dat onderscheidt dit project van een eerder AI-experiment van Cloudflare rond een Matrix-server, dat volgens critici te ambitieus werd gepresenteerd. Over vinext schrijft The Register dat het project realistischer oogt, mede door de uitgebreide tests en duidelijke afbakening van wat wel en niet wordt ondersteund.

Naast de technische implicaties ziet Cloudflare het experiment ook als een signaal voor de bredere softwaresector. Het herimplementeren van een complex framework in zo’n korte tijd zou zonder AI ondenkbaar zijn geweest. Tegelijk roept het vragen op over de rol van bestaande abstractions. Veel daarvan zijn ontworpen om menselijke beperkingen te compenseren, terwijl AI grotere systemen in samenhang kan overzien. Dat opent de deur naar eenvoudigere stacks, maar ook naar codebases die voor mensen lastiger te doorgronden zijn.