Man, I love Next ... but I also love Vite ... and I hate the Next team, because they focus on fancy new features for 0.1% of their users, at the complete expense of the other 99.9% of the Next community (who they basically ignore).
This gives someone like me everything we want. Better performance is something the Next community has been begging for for years: the Next team ignored them, but not the Cloudflare team. Meanwhile Vite is a better core layer than the garbage the Next people use, but you still get the full Next functionality.
I wish Cloudflare the best of luck with this fork: I hope it succeeds and gets proven so I can use it at my company!
It may be sacrilege to bring it into this conversation, but I've spent the last year building a fairly large community site in Nuxt, vite has been wonderful, though I prefer vue over react. I am a little annoyed I paid for NuxtUI Pro like 3 months before it became free, but whatever.
What is it you love about Next that isn’t tied to Vercel and isn’t available elsewhere? I love Next too but I find the value is inextricably linked to Vercel. I can’t imagine choosing to use Next if I’m not choosing it for Vercel’s fancy stuff.
at my job we have some 7+ year old nextjs apps that don't receive new features but still do their jobs perfectly fine, and they keep changing random shit around for no reason, we've had to waste time on multiple refactors already for major nextjs version bumps once the older ones are no longer supported
Yeah, Vercel should have done this with NextJS a while ago. There is a reason why quite literally every other framework uses Vite because it amazing, easy to use, and easy to extend.
Rails 8 is surprisingly good nowadays. It absolutely still has its share of problems (e.g. Bundler being slow, the frontend story being crappy without Inertia, lack of types which is a biggie, memory) but it is still a fantastic framework imo.
React was originally meant to be the 'V' in MVC. You can still use it that way and React becomes very simple when you only use it for UI. Why do data fetching in a React component?
I mean you don't want really want to use javascript for the backend anyway... What's the problem with just using vite and any backend of your choosing?
This is probably the most interesting AI experiment I've seen yet. Looking through the codebase has me wondering where all the code is. I don't know if anyone has had the displeasure of going through the next.js codebase, but I estimate it's at least two orders of magnitude more code than this reimplementation. Which makes me wonder, does it actually handle the edge cases or does it just pass the tests.
Like compare the two form implementations for example. Vinext is a completely different implementation compared to what the Next.js version does. Is their behaviour actually the same? The rewrite looks incredibly naive.
It is the most passive aggressive thing I’ve ever seen. Cloudflare team had issues with the Next team? And they responded with ‘we can do your whole product with an intern and AI’, lol.
This is pretty fascinating and comes with some complicated AI-world incentives that I've been ruminating on lately. The better you document your work, the stronger contracts you define, the easier it is for someone to clone your work. I wouldn't be surprised if we end up seeing open source commercial work bend towards the SQLite model (open core, private tests). There's no way Cloudflare could have pulled this off without next's very own tests.
Speaking more about the framework itself, the only real conclusion I have here is that I feel server components are a misunderstood and under-utilized pattern and anyone attempting to simplify their DX is a win in my book.
Next is very complex, largely because it has incrementally grown and kept somewhat backwards compatible. A framework that starts from the current API surface and grows can be more malleable and make some tough decisions here at the outset.
Crazy to see it's already being run on a .gov domain[0]. TTFGOV as a new adoption metric?
> The better you document your work, the stronger contracts you define, the easier it is for someone to clone your work.
Well said; this is my thinking as well. One person or organization can do the hard work of testing multiple approaches to the API, establishing and revising best practices, and developing an ecosystem. Then once things are fairly stable and well-understood, another person can just yoink it.
I have little empathy for Vercel, and here they're kind of being hoist by their own petard of inducing frustration in people who don't use their hosting; but I'm concerned about how smaller-scale projects (including copyleft ones) will be laundered and extinguished.
the SQLite model point is underrated. the real moat isn't the test suite itself, it's the person who knows which edge cases matter and why. you can clone passing tests but not the judgment that wrote them.
> There's no way Cloudflare could have pulled this off without next's very own tests.
I'm very uncovinced. History showed us very complex systems reverse engineered without access to the source code. With access to the source code, coupled with the rapid iteration of AI, I don't see any real moat here; at best a slight delay.
The tests are absolutely essential, otherwise there's no signal to guide the LLM towards correct behavior and hallucinations accumulate until any hope of forward progress collapses.
Source code is one thing; tests covering the codebase are another.
And if you just copy the source code or translate it one-to-one into a new language, rather than make a behavioral copy, there will be copyright issues.
Surprised this didn't get a higher placement on the HN front page, only 34 points?
Absolutely impressive that this was done with $1100 in tokens and in 1 week. I agree, and so do a lot of my peers that code has quickly become nothing more than a tool to accomplish a task. Code never was and never should have been the product in and of itself. This is amazing news, and this is exactly where we should be as a civilization. The only people that have trouble with this development are the gatekeepers who think that code should be sacred and revered by itself. That is a perversion of computing, and we got the wrong group of people there.
While Vercel continues to be the #1 host for Next.js projects, others seem to claim that migrating to their platform is as easy as enabling the Github integration. It's not. Cloudflare even mentions that you can port your Next project to run on its infra, but I couldn't get it to work. Replit markets the same, and yet, Next fails to on there too. You have to go through several painful hacks and try-build-fail loops and eventually not worth it.
You know what took less time and frustration? I asked Claude Code with Opus 4.6 to convert the entire Next project to React+Vite. And as a shameless plug, I was able to get https://jsonquery.app fully up and running and the builds are lightning fast with Vite, and worked with just 2-3 tries on Cloudflare pages. If you don't need SSR and Next routing, I suggest you do the same.
Oh, and in Next.js land, Turbopack had severe edge cases, that I had to revert to Webpack. Esp when dealing with WASM, as JSON Query uses the jq dependency brought in as a wasm to run on the web. This is not an issue with Vite.
Or just skip/migrate off of the Next.js and other JS SSR rats nets to Elixir and Phoenix LiveView - Claude and Codex are both very good with Elixir now: https://elixirisallyouneed.dev
I see this sort of maximalism a lot where people are just turned off js and say f it I'll use HTMX or LiveView or Alpine or whatever promises that you won't have to write js, and that's fine; as long as you're building generic dashboards and/or the same repetitive UI patterns. And even then you're basically writing JS just in a worse way.
I use Liveview and Elixir for 2-3 home-lab related frontend services; but when I have to do something moderately complicated I have to reach out for a darn js library and hooks and phx-commands. Try using native drag and drop or even client-side markdown rendering. This also leads to memory leaks when you can't properly detach libraries.
I just say think about your goals; these frameworks/platforms that promise to remove JS from your life or minimize it do so by sacrificing something. There's no silver bullet for building on the web.
But whenever I do talk to people who are debating amongst frameworks SvelteKit and SolidStart are the two I recommend, it's easy to host anywhere (unlike Next), you can turn off SSR, just ship static files with very minor changes (exporting a variable in Svelte for ex). They're really quick, get the job done, actively being worked on, loads of resources, discussions and thriving communities.
I find it interesting that they bought Astro (https://blog.cloudflare.com/astro-joins-cloudflare/), which from my definitely-not-a-frontend-person perspective seems to tackle a similar problem to Next. A month ago.
If it is so cheap to make something that they recommend using (rather than a proof of concept), why buy Astro (presumably it was more expensive than the token cost of this clone?).
One conclusion is that, at the organisational level, it still makes sense to hire the “vision” behind the framework, rather than just clone it. Alternatively, maybe AI has improved that much in 1 month!
Astro isn’t solving the same surface as next. Astro is great for static sites with some dynamic behavior. The same could be said about next depending on how you write your code, but next can also be used for highly dynamic websites. Using Astro for highly dynamic websites is like jamming a square peg into a round hole.
We use Astro for our internal dev documentation/design system and it’s awesome for that.
Astro is a different paradigm. Acquiring Astro gives Cloudflare influence over a very valuable class of website, in the same way Vercel has over a different class from their ownership of Next.js. Astro is a much better fit for Cloudflare. Next.js is very popular and god awful to run outside of Vercel, Cloudflare aren’t creating a better next.js, they’re just trying to make it so their customers can move Next.js websites from Vercel to Cloudflare. Realistically, anyone moving their next.js site to Cloudflare is going to end up migrating to Astro eventually.
I think they just want steer users/developers to CF products, maybe not? It is interesting to see the two platforms. I've moved to svelte, never been a frontend person either but kind of enjoying it actually.
Astro has "server islands" which rely on a backend server running somewhere. If 90% of the page is static but you need some interactivity for the remaining 10%, then Astro is a good fit, as that's what makes it different than other purely static site generators. Unlike Next.js, it's also not tied to React but framework-agnostic.
Anyways, that's why it's a good fit for Cloudflare: that backend needs to be run somewhere and Astro is big enough to have some sort of a userbase behind them that Cloudflare can advertise its service to. Think of it more as a targeted ad than a real acquisition because they're super interested in the technology behind it. If that were the case, they could've just forked it instead of acquiring it.
From Astro's perspective, they're (presumably) getting more money than they ever did working on a completely open source tool with zero paywalls, so it's a win-win for both sides that Cloudflare couldn't get from their vibe-coded project nobody's using at the moment.
Nextjs had remote code execution vulnerabilities because of how they implemented react server side. I am not touching an AI version without waiting for a while.
Thank you. This is the part that shocks me the most. I was always wary of Next.js for this exact reason (in fact, I refused to use it for personal projects before the RCE because I was scared that I would make a mistake and leak server-side data to the client.
Bugs like this are easy to happen and even easier to miss if you’re generating thousands of lines of code with AI.
I'm deeply skeptical of the "X reimplemented and it was super easy" thing.
The devil is in the detail.
So many edge cases unlikely to be there.
So many details or fine details unlikely to be there.
Years of bug fixes.
If it is literally a drop in replacement and it passes all the tests, and you're replicating something with and extremely thorough test suite, then sure I'll give you the benefit of the doubt.
Otherwise, I don't believe people "rebuilt X product in a week".
I don't necessarily buy it either, but TFA talks about the test suite. They basically pulled 2k unit tests and 400 E2E tests from Next and made sure they all passed.
I get the gist here but I hate the tone of these sorts of posts. Imagine being a NextJS developer, pouring your heart and soul into it day after day, knowing the codebase inside and out, and seeing some dude on the Cloudflare blog bragging about how he rewrote your project in a week using AI. It's tone deaf. It's not impressive.
The tool is hella useful. The messaging is ignorant. This should have been a "we built a tool to deploy NextJS on cloudflare natively" instead of this AI brag.
The article say that "Next.js is well-specified." I... don't think this is actually true. It certainly has lots of documentation, but as has come up time and time again, there are tons of undocumented or poorly documented behaviors that have been the cause of consternation.
So I kinda wonder, did they just create the framework that Next.js claims to be but never has been? And is Next.js without the hidden stuff actually a good framework? Who knows.
someone spent over 1000 dollars to replicate the functionality of Next.JS, even 1 dollar would seem too much somehow. I suppose that is me being overly retributive.
> Most abstractions in software exist because humans need help. We couldn't hold the whole system in our heads, so we built layers to manage the complexity for us.
Kind of a sloppy statement, but I don't think it's accurate to say abstraction or layering exists in software just because humans need help comprehending it. Abstractions often exist to capture the essence of some aspect of the real world, and to allow for software reuse. AIs will still find reusing software useful? Secondly, you equate "abstractions" with "layers" which aren't really the same thing. Layers are more about separation of concerns. Maybe it could be argued layering is a type of abstraction.
I was brought in tangentially to add some custom stuff on top of a Next.js app. Struggled for days with the most obscenely inflexible bloated mess before hitting an issue requiring a feature leading me to a ticket, where one of the original authors posted a myopic essay-length presumptuous treatise explaining why the feature was wrong and the submitter was bad for wanting it because, reading between the lines, the author didn't have enough industry experience to understand where that feature could be essential.
I have no idea how Next won the hearts and minds of so many, it is steaming garbage with all the aesthetic of an abattoir industrial carcass shredder that has been in use 24/7 for 10 years. I'll happily be polite when folk talk about using it, but make no mistake, somewhere internally a write-only reputational fuse silently blows the moment it is mentioned. If AI was not justified for any other reason, then it's to zero shot port Next apps into basically any other framework
i love how this disintermediates the next.js/vercel axis, which seems to be determined to make basically everything hard except for exactly what they want to do. as much as i love what vercel has done for open source in general (amazing stuff!) it is hard to interpret some of the stuff they do with next as anything other than vendor lock-in bs… the kind that i know is not in their hearts.
...and (again), hello world does not work [1]. the ai slop pr [2] absolutely butchers the fix. anyone foolish enough to switch to this is in for a rough time. details matter!
> The [next.js] developer experience is top-notch.
let me add my own unqualified statement to that: no.
> Next.js has invested heavily in Turbopack but if you want to deploy it to Cloudflare, Netlify, or AWS Lambda, you have to take that build output and reshape it into something the target platform can actually run.
it's almost as if vercel had some kind of financial incentive to gear this towards their own platform.
> reimplemented the Next.js API surface on Vite directly
a clown car screeches to a halt; several burnt-out-bored oracle vs google lawyers climb out and, weirdly, i am there for it
all in all, it's definitely a good example of something we couldn't have done for $1100 pre-llms, but: should we have? did somebody consult the lava lamps?
Something like 95% of vinext is pure Vite. The routing, the module shims, the SSR pipeline, the RSC integration: none of it is Cloudflare-specific.
--- end quote ---
The real achievement is human-built Vite (and it is an amazing project).
Since Next.js's API surface and capabilities are known, this is actually quite a good use of AI: re-implement some functionality using a different framework/language/approach. They work rather well with that.
This is another example that good tests (e.g. Next.js's own test suite) are SO incredibly important to making the AI able to work on big projects autonomously with lower steering. So is a very domain-knowledgeable human in charge of steering.
NextJS is bad enough, cannot imagine an Ai version
Cloudflare also lost my support because their support is among the worst, rep evn sneered (cannot update my WHOIS, still, after months of emails). Strongly recommend avoiding their platform. You will find that you lose more time & money to dealing with the issue of parity. God help you if you ever need support, almost every question in Discord goes unanswered as well.
The former CTO commented a lot here and said numerous times about emailing him with issues that support couldn't figure out. Maybe try emailing the new CTO?
nah, they already lost my business, it seems cultural, which we know is a hard ship to steer in a new direction, I'm not interested in trying that again
This is interesting to my on both a technical level as well as a social-political level. I wonder what impact "AI-washing" will have on licensing for example
The core network products seem to be having a run of downtime issues too. Maybe they should focus on their homework before going out to play with the AI kids.
I guess the thing here (which they admit in the post) is that they’re just porting it to Vite, which is the real champ of the story. The LLM basically worked as a translator instead of rebuilding the whole thing from scratch.
So maybe the project is sort of maintainable, as long as people maintain Vite.
This gives someone like me everything we want. Better performance is something the Next community has been begging for for years: the Next team ignored them, but not the Cloudflare team. Meanwhile Vite is a better core layer than the garbage the Next people use, but you still get the full Next functionality.
I wish Cloudflare the best of luck with this fork: I hope it succeeds and gets proven so I can use it at my company!
So entertain me if you disagree.
Everything just becomes a plugin.
React was originally meant to be the 'V' in MVC. You can still use it that way and React becomes very simple when you only use it for UI. Why do data fetching in a React component?
Like compare the two form implementations for example. Vinext is a completely different implementation compared to what the Next.js version does. Is their behaviour actually the same? The rewrite looks incredibly naive.
https://github.com/vercel/next.js/blob/b8cbaad24ca66ec673a7b...
https://github.com/cloudflare/vinext/blob/main/packages/vine...
Either way, pretty impressive.
Woah.
Speaking more about the framework itself, the only real conclusion I have here is that I feel server components are a misunderstood and under-utilized pattern and anyone attempting to simplify their DX is a win in my book.
Next is very complex, largely because it has incrementally grown and kept somewhat backwards compatible. A framework that starts from the current API surface and grows can be more malleable and make some tough decisions here at the outset.
Crazy to see it's already being run on a .gov domain[0]. TTFGOV as a new adoption metric?
[0] https://www.cio.gov/
Well said; this is my thinking as well. One person or organization can do the hard work of testing multiple approaches to the API, establishing and revising best practices, and developing an ecosystem. Then once things are fairly stable and well-understood, another person can just yoink it.
I have little empathy for Vercel, and here they're kind of being hoist by their own petard of inducing frustration in people who don't use their hosting; but I'm concerned about how smaller-scale projects (including copyleft ones) will be laundered and extinguished.
I'm very uncovinced. History showed us very complex systems reverse engineered without access to the source code. With access to the source code, coupled with the rapid iteration of AI, I don't see any real moat here; at best a slight delay.
And if you just copy the source code or translate it one-to-one into a new language, rather than make a behavioral copy, there will be copyright issues.
Next.js is MIT-licensed. Cloudflare's rewrite is... also MIT licensed...
Absolutely impressive that this was done with $1100 in tokens and in 1 week. I agree, and so do a lot of my peers that code has quickly become nothing more than a tool to accomplish a task. Code never was and never should have been the product in and of itself. This is amazing news, and this is exactly where we should be as a civilization. The only people that have trouble with this development are the gatekeepers who think that code should be sacred and revered by itself. That is a perversion of computing, and we got the wrong group of people there.
While Vercel continues to be the #1 host for Next.js projects, others seem to claim that migrating to their platform is as easy as enabling the Github integration. It's not. Cloudflare even mentions that you can port your Next project to run on its infra, but I couldn't get it to work. Replit markets the same, and yet, Next fails to on there too. You have to go through several painful hacks and try-build-fail loops and eventually not worth it.
You know what took less time and frustration? I asked Claude Code with Opus 4.6 to convert the entire Next project to React+Vite. And as a shameless plug, I was able to get https://jsonquery.app fully up and running and the builds are lightning fast with Vite, and worked with just 2-3 tries on Cloudflare pages. If you don't need SSR and Next routing, I suggest you do the same.
Oh, and in Next.js land, Turbopack had severe edge cases, that I had to revert to Webpack. Esp when dealing with WASM, as JSON Query uses the jq dependency brought in as a wasm to run on the web. This is not an issue with Vite.
looks like HN has finally defeated the cloudflare voting ring
Except that the code completely and precisely defines the actual product. Bad code => bad product.
> code should be sacred and revered by itself
As a production of the hand and mind, code should be revered - if only as the mark of the human or groups of humans that made it.
> the wrong group of people
The group of people who care deeply about the world around them.
The last time Cloudflare vibe-coded something, it was a glorified proof-of-concept with TODOs up the wazoo.
I use Liveview and Elixir for 2-3 home-lab related frontend services; but when I have to do something moderately complicated I have to reach out for a darn js library and hooks and phx-commands. Try using native drag and drop or even client-side markdown rendering. This also leads to memory leaks when you can't properly detach libraries.
I just say think about your goals; these frameworks/platforms that promise to remove JS from your life or minimize it do so by sacrificing something. There's no silver bullet for building on the web.
But whenever I do talk to people who are debating amongst frameworks SvelteKit and SolidStart are the two I recommend, it's easy to host anywhere (unlike Next), you can turn off SSR, just ship static files with very minor changes (exporting a variable in Svelte for ex). They're really quick, get the job done, actively being worked on, loads of resources, discussions and thriving communities.
If it is so cheap to make something that they recommend using (rather than a proof of concept), why buy Astro (presumably it was more expensive than the token cost of this clone?).
One conclusion is that, at the organisational level, it still makes sense to hire the “vision” behind the framework, rather than just clone it. Alternatively, maybe AI has improved that much in 1 month!
Maybe I'm wrong. We'll see what happens a couple of years from now.
We use Astro for our internal dev documentation/design system and it’s awesome for that.
Thanks
It does not. Astro is more for static sites not dynamic web apps.
Anyways, that's why it's a good fit for Cloudflare: that backend needs to be run somewhere and Astro is big enough to have some sort of a userbase behind them that Cloudflare can advertise its service to. Think of it more as a targeted ad than a real acquisition because they're super interested in the technology behind it. If that were the case, they could've just forked it instead of acquiring it.
From Astro's perspective, they're (presumably) getting more money than they ever did working on a completely open source tool with zero paywalls, so it's a win-win for both sides that Cloudflare couldn't get from their vibe-coded project nobody's using at the moment.
Bugs like this are easy to happen and even easier to miss if you’re generating thousands of lines of code with AI.
The devil is in the detail.
So many edge cases unlikely to be there.
So many details or fine details unlikely to be there.
Years of bug fixes.
If it is literally a drop in replacement and it passes all the tests, and you're replicating something with and extremely thorough test suite, then sure I'll give you the benefit of the doubt.
Otherwise, I don't believe people "rebuilt X product in a week".
I like this is called out.
The tool is hella useful. The messaging is ignorant. This should have been a "we built a tool to deploy NextJS on cloudflare natively" instead of this AI brag.
- Node.js production server (vinext start) works for testing but is less complete than Workers deployment. Cloudflare Workers is the primary target.
I don’t know what this means but it feels like yet another milestone moment.
So I kinda wonder, did they just create the framework that Next.js claims to be but never has been? And is Next.js without the hidden stuff actually a good framework? Who knows.
I suppose that is you being overly retributive indeed.
Does anyone have experiences with the EU alternative bunny.net?
Kind of a sloppy statement, but I don't think it's accurate to say abstraction or layering exists in software just because humans need help comprehending it. Abstractions often exist to capture the essence of some aspect of the real world, and to allow for software reuse. AIs will still find reusing software useful? Secondly, you equate "abstractions" with "layers" which aren't really the same thing. Layers are more about separation of concerns. Maybe it could be argued layering is a type of abstraction.
I have no idea how Next won the hearts and minds of so many, it is steaming garbage with all the aesthetic of an abattoir industrial carcass shredder that has been in use 24/7 for 10 years. I'll happily be polite when folk talk about using it, but make no mistake, somewhere internally a write-only reputational fuse silently blows the moment it is mentioned. If AI was not justified for any other reason, then it's to zero shot port Next apps into basically any other framework
[1] https://github.com/cloudflare/vinext/issues/22
[2] https://github.com/cloudflare/vinext/pull/31/changes#r284987...
let me add my own unqualified statement to that: no.
> Next.js has invested heavily in Turbopack but if you want to deploy it to Cloudflare, Netlify, or AWS Lambda, you have to take that build output and reshape it into something the target platform can actually run.
it's almost as if vercel had some kind of financial incentive to gear this towards their own platform.
> reimplemented the Next.js API surface on Vite directly
a clown car screeches to a halt; several burnt-out-bored oracle vs google lawyers climb out and, weirdly, i am there for it
all in all, it's definitely a good example of something we couldn't have done for $1100 pre-llms, but: should we have? did somebody consult the lava lamps?
--- start quote ---
Something like 95% of vinext is pure Vite. The routing, the module shims, the SSR pipeline, the RSC integration: none of it is Cloudflare-specific.
--- end quote ---
The real achievement is human-built Vite (and it is an amazing project).
Since Next.js's API surface and capabilities are known, this is actually quite a good use of AI: re-implement some functionality using a different framework/language/approach. They work rather well with that.
> And we already have customers running it in production.
Wouldn't be like Claude to maybe forget to implement half the library, would it?
I guess they can call themselves Claudeflare now ;)
Cloudflare also lost my support because their support is among the worst, rep evn sneered (cannot update my WHOIS, still, after months of emails). Strongly recommend avoiding their platform. You will find that you lose more time & money to dealing with the issue of parity. God help you if you ever need support, almost every question in Discord goes unanswered as well.
have fun.
So maybe the project is sort of maintainable, as long as people maintain Vite.