These are my opinions and are ruminations on what might be happening as more and more developers use LLMs and Frameworks to build on the web.
In October last year I wrote “will developers care about frameworks in the future?” predicting that LLMs would abstract away framework choice. I was wrong—or at least, wrong about the timeline.
The reality is more interesting and more permanent: React isn’t competing with other frameworks anymore. React has become the platform. And if you’re building a new framework, library or browser feature today, you need to understand that you’re not just competing with React—you’re competing against a self-reinforcing feedback loop between LLM training data, system prompts, and developer output that makes displacing React functionally impossible.
If you look at what Replit, Bolt, and similar tools are doing, they’re not trying to abstract away frameworks—they’re explicitly hardcoding React into their system prompts. They have to. If you’re building a tool today to attract developers, you need to give them code they can maintain. And “code developers can maintain” now means “React” for the vast majority of web developers.
According to builtwith.com, there were +13m sites outside of the top 1m deployed with React in the last 12 months. Look at these curves:
React usage over time
React usage over the last 12 months
However, looking at HTTP Archive, it tells a different story. React usage has stalled at 1.2 million mobile origins on mobile vs 55 million origins as reported by Builtwith.
HTTP Archive. React usage over the last 6 months
The dataset sizes are vastly different. HTTP Archive looks over some 12-16 million origins, while Builtwith is reportedly looking at some 414 million root domains. Sites also don’t get into HTTP Archive unless there is some amount of usage and many sites in Builtwith might be parked domains or sites that are not actively being used.
... continue reading