Claude named a different first choice for a question about which JavaScript framework to start with.
ClaudeSep 14
Which JavaScript framework should I start a new project with today?Short answer: React with Vite if you want the safest bet, or SvelteKit / Nuxt if you care most about developer happiness. But the right pick depends on a few things, so here's how I'd actually decide.…
ClaudeSep 15
Which JavaScript framework should I start a new project with today?Default answer: React, via Next.js if you need server rendering, or Vite + React + TanStack Router if it's a pure client-side app.Not because it's the most elegant — it isn't — but because the ecosystem gravity is…
Why it’s minor
Which products a model recommends is read out of its answer by the least reliable part of our scorer, so compare the two answers before reading much into this.
The full answers
Each answer as the API returned it, with its Markdown rendered for reading. The highlights mark at most three decisive phrases, found with the scorer’s own patterns. Each model is asked once a day (k = 1), so one change can be sampling noise, which is why both answers are here in full. How scoring works.
Asked verbatim · Question 31
SEP 14beforePermalink
- React with Vite
- Need SSR
- React Server Components
- Solid and Qwik
Short answer: React with Vite if you want the safest bet, or SvelteKit / Nuxt if you care most about developer happiness. But the right pick depends on a few things, so here's how I'd actually decide.
Quick decision guide
Building a marketing site, blog, docs, or anything content-heavy?
→ Astro. Ships almost no JS by default, great Markdown/MDX story, and you can drop in React/Vue/Svelte components for the interactive bits. It's the clear winner in this category and not really close.
Building an app behind a login (dashboard, SaaS tool, internal tool)?
→ React + Vite + React Router, or TanStack Router if you want best-in-class type-safe routing. You don't need a meta-framework for SEO if there's nothing to index. This stack is boring, fast to build with, and easy to hire for.
Need SSR, SEO, and app-like interactivity in one product?
→ Next.js if you're on React and want the default path (be aware the App Router + Server Components model has a real learning curve). Nuxt if you prefer Vue — it's arguably the most cohesive full-stack framework right now. SvelteKit if you want the least ceremony.
Large team, long-lived enterprise codebase, lots of devs cycling through?
→ Angular deserves a fresh look. Modern Angular (signals, standalone components) is a genuinely different and much better framework than the one people complain about. Its opinionated, batteries-included structure is an asset when you have 40 developers and high turnover.
Optimizing for your own enjoyment and speed on a small team?
→ SvelteKit. Svelte 5's runes made reactivity more explicit and predictable, and you write noticeably less code than the React equivalent. The tradeoff is a smaller ecosystem — you'll occasionally write a wrapper yourself instead of installing one.
A few honest caveats
- •Ecosystem size is the one thing you can't easily fix later. React's gravitational pull means auth libraries, component kits, charting, drag-and-drop, and Stack Overflow answers all target it first. That matters more than any DX advantage when you hit an unusual requirement at 11pm.
- •Don't pick based on benchmarks. The performance differences between these frameworks are dwarfed by your own architectural choices — how much data you ship, how many round trips you make, whether you lazy-load.
- •React Server Components are the main thing to think hard about. They're powerful but they change the mental model significantly, and the ecosystem is still catching up. If that complexity isn't buying you something specific, a plain SPA or a simpler SSR framework is a legitimate choice, not a cop-out.
- •Solid and Qwik are technically impressive but I'd only recommend them if you have a specific reason and tolerance for smaller communities.
One caveat: my knowledge has a cutoff, and this space moves fast. Version numbers and the state of newer tools like TanStack Start may have shifted, so worth sanity-checking current release status before you commit.
If you tell me what you're building, the team size, and whether SEO matters, I can narrow this to one recommendation.
SEP 15afterPermalink
- Default answer React
- Astro
- SvelteKit
- Angular
Default answer: React, via Next.js if you need server rendering, or Vite + React + TanStack Router if it's a pure client-side app.
Not because it's the most elegant — it isn't — but because the ecosystem gravity is overwhelming. Any library you need exists, any problem you hit has been Googled before, and you can hire for it. For most projects, that matters more than technical elegance.
That said, there are situations where something else is clearly better:
- •Content-heavy site (marketing, docs, blog, mostly-static with some interactive bits) → Astro. Ships almost no JS by default, and you can drop React/Vue/Svelte components into islands where you actually need interactivity. Using Next.js for this is overkill.
- •Small team, velocity matters, hiring isn't a constraint → SvelteKit or Nuxt. Both have materially better DX than Next. SvelteKit especially — less ceremony, smaller bundles, and the docs are excellent. The tradeoff is a thinner ecosystem of off-the-shelf components.
- •Large org, multiple teams, long-lived codebase → Angular is a legitimate choice again. The signals-based rewrite modernized it considerably, and strong conventions plus batteries-included tooling reduce bikeshedding when you have 40 developers.
- •You already have a server-rendered backend (Rails, Django, Laravel, Phoenix) → consider not adding a SPA framework at all. HTMX, Hotwire, or LiveView will get you most of the way with a fraction of the complexity.
Two honest caveats about the default recommendation. React's complexity has genuinely increased — Server Components and the Next.js App Router are powerful but have a real learning curve, and plenty of experienced developers find them frustrating. And Next.js has some coupling to Vercel's deployment model that's worth understanding before you commit. If neither appeals, SvelteKit is my second pick without much hesitation.
Things that will affect your outcome more than this decision: use TypeScript, pick what your team already knows if they know something, and check that your deployment target is well-supported before you're three months in.
One note — framework releases move fast and my information has a cutoff, so worth a quick sanity check on current versions.
What are you building? I can be more specific with a bit of context.
Exact recordShowHideEach response verbatim, unrendered, with line numbers and its sha256
Before baseline
2026-09-14 permalink
- Scored
- answered
- Received
- 2026-09-14 09:27:28 UTC
- Run
- 20260914T090022Z-e98262
- Served by
- Claude Platform on AWS · HTTP 200 · finish stop
- Size
- 3,157 characters · 2,172 tokens out incl. hidden reasoning · 32.2 s
- React with Vite
- Need SSR
- React Server Components
- Solid and Qwik
Highlighted: the names the extractor took as picks, where they appear verbatim (4 of 4).
End of response · 29 lines · 3,157 characters · sha256 b1b232a570382b7174d7c8e457971f0b9cff588758d34d8902014bf93a4d295a
After this run
2026-09-15 permalink
- Scored
- answered
- Received
- 2026-09-15 09:24:16 UTC
- Run
- 20260915T090004Z-599f39
- Served by
- Claude Platform on AWS · HTTP 200 · finish stop
- Size
- 2,338 characters · 2,229 tokens out incl. hidden reasoning · 35.1 s
- Default answer React
- Astro
- SvelteKit
- Angular
Highlighted: the names the extractor took as picks, where they appear verbatim (3 of 4).
End of response · 18 lines · 2,338 characters · sha256 22d7721816ac79b7078c5aa6be89d393da25d446fca333d66cc50c6957a58132
Record detailsShowHideModel version, runs, baseline, triage, permalink, event ID
Every morning, what moved on the model you depend on, what it means for you, and what to check.
$9 a month. Cancel any time. The next one tomorrow morning.
Get the daily brief$99 once, for as long as modeldrift.watch runs. The first 100 buyers.
The record stays free. The brief is the reading of it.