DEV Community

Aditya Agarwal
Aditya Agarwal

Posted on

AI coding assistants are building the same app 10 million times

Every AI coding assistant on the planet is quietly converging on the same architecture. And nobody's talking about what happens when that architecture has a bad day.

Open Claude Code, Cursor, or any AI-powered tool. Ask it to build you a SaaS app. You'll get Next.js, Vercel, Supabase, Tailwind, maybe Prisma. Every single time.

That's not a coincidence. It's a monoculture. And monocultures have a way of collapsing all at once.

The vibecoding assembly line

The "vibecoding" trend made this worse overnight. People prompt their way to a working app without making a single architectural decision themselves. The AI makes every decision for them. And it always makes the same decision.

This isn't about whether Next.js or Supabase are good tools. They're fine. The problem is that millions of apps now share identical dependency trees, identical auth patterns, identical deployment pipelines.

→ Same framework versions
→ Same ORM configurations
→ Same auth libraries wrapping the same providers
→ Same serverless functions on the same infrastructure

Security researchers have already flagged this. When AI-generated codebases all look the same, one CVE doesn't just affect "some apps." It affects the default app.

One CVE to rule them all

Think about the blast radius for a moment. A critical vulnerability in a popular Next.js middleware pattern wouldn't just hit teams who chose that pattern deliberately. It would hit every vibecoded app that inherited it by default.

We've seen supply chain attacks before. Log4j was brutal. But Log4j lived in codebases that were at least architecturally diverse. The apps around it were different shapes and sizes.

Now imagine Log4j, but every app has the same shape. Same entry points. Same data flow. Same deployment target. An attacker doesn't need to figure out how your app works. They already know. 🎯

The AI doesn't know it's doing this

Let me explain — Claude Code and Cursor are not intentionally aiming to foster a monoculture. They're simply going for what's effective. Next.js documentation is awesome. Supabase APIs are neat. Vercel simplifies deployment.

The AI suggests widely-used options because the more popular they are, the more training data there is. The more training data, the better the suggestions. Better suggestions lead to wider adoption, fueling the loop even more.

Truth be told, if you're already on the $20 Claude Pro plan, you're consuming your quota so quickly that you won't really be able to stop and ponder over which architecture would make more sense for your use case. You'll just go with whatever the AI suggested and push ahead. For actual coding work, you'd need a Max plan — let alone for investing time to challenge the defaults.

That's where the problem lies. The economics of AI-assisted coding essentially encourage you to embrace the defaults. And the defaults are all identical.

What would actually help

I’m not saying everyone should go build apps in Haskell out of spite. But a few things would make this less dangerous.

→ AI tools should randomize or rotate their default suggestions based on project context
→ Security teams should start modeling "AI-default blast radius" as a real threat vector
→ If you're vibecoding, at least read the dependency list before you ship
→ Framework maintainers need to understand they're now critical infrastructure whether they signed up for it or not

The boring truth is that architectural diversity is a security feature. It always has been. We just never had a machine capable of eliminating it at scale before. 😅

This isn't a Next.js problem

I want to be clear — swap Next.js for any framework. The issue isn’t the specific stack. It’s the convergence pattern itself.

If every AI tool defaulted to Rails and Heroku, I’d be writing the same article with different nouns. The risk is homogeneity at a scale we’ve never had to think about.

We went from “everyone copies the same tutorial” to “a machine generates the same app millions of times” in about eighteen months. That’s a fundamentally different threat model.

The next big supply chain attack won't need to be clever. It'll just need to target the default. 🔓

So here's what I'm wondering — if you're using AI coding tools daily, when was the last time you actually chose your stack instead of accepting whatever the AI suggested?

Top comments (1)

Collapse
 
kalema_piuscv_28335646 profile image
Kalema Pius

true....