Claude named a different first choice for a question about which JavaScript framework to start with.
ClaudeSep 17
Which JavaScript framework should I start a new project with today?Short answer: React, via Vite for a SPA or Next.js if you need SSR/SEO. That's the safe default in 2025 because of ecosystem size, hiring, library availability, and the sheer volume of documentation and examples. But a few…
ClaudeSep 18
Which JavaScript framework should I start a new project with today?…Content-heavy site (marketing, blog, docs) — Astro. It ships zero JS by default, has great Markdown/MDX support, and lets you drop in React/Vue/Svelte components as islands where you actually need interactivity. Using a full app…
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 17beforePermalink
- React
- Astro
- Next.js
- SvelteKit
- Angular
Short answer: React, via Vite for a SPA or Next.js if you need SSR/SEO. That's the safe default in 2025 because of ecosystem size, hiring, library availability, and the sheer volume of documentation and examples. But a few scenarios point elsewhere:
Pick by what you're building:
- •Content-heavy site (blog, docs, marketing, e-commerce catalog): Astro. Ships almost no JS by default, and you can drop in React/Svelte/Vue components as islands where you need interactivity. Using a full app framework for this is overkill.
- •Dashboard / internal tool / app behind a login: Vite + React + React Router. You don't need SSR, and skipping Next.js avoids a lot of complexity around server components, caching, and deployment.
- •Public app that needs SEO and fast first loads: Next.js or Nuxt (Vue). Both are mature and have good hosting stories.
- •Small team, you value DX and speed of writing code: SvelteKit. Less boilerplate, genuinely pleasant, smaller bundles. Trade-off is a thinner ecosystem — you'll occasionally write your own wrapper for something React has three options for.
- •Large team, enterprise, long-lived codebase: Angular. Modern Angular (signals, standalone components) is much better than its old reputation suggests, and its opinionated structure and batteries-included tooling are real advantages when 30 people touch the same repo.
- •Web + mobile from one skillset: React, so you can reuse knowledge with React Native.
Two things that matter more than the framework choice:
- 1.Your rendering strategy. SPA vs. SSR vs. static generation affects your architecture, hosting cost, and debugging experience far more than React vs. Vue does. Decide this deliberately rather than inheriting it from a framework's defaults.
- 2.What you or your team already know. Familiarity with a "worse" framework beats learning a "better" one on a real deadline. Frameworks converge on the same ideas anyway — components, reactive state, file-based routing.
Worth avoiding: starting with Solid or Qwik unless you specifically want their architectural properties and are comfortable being an early adopter. They're technically impressive but you'll hit gaps.
One caveat: my information has a cutoff, so check current versions and release notes before committing — Next.js in particular moves fast and has had some rough migrations. The broad landscape above has been stable for a while, though.
What are you building? I can give a more specific recommendation.
SEP 18afterPermalink
- Astro
- Vite + React + TanStack Router/Query
- Next.js
- Angular
- Svelte 5
Short answer: if you have no strong constraints, React with Vite (plus TanStack Router for a client-side app, or Next.js if you need SSR/SEO) is the safest default. It's the largest ecosystem, easiest to hire for, and every problem you hit has been solved publicly already.
But the honest answer depends on what you're building:
Content-heavy site (marketing, blog, docs) — Astro. It ships zero JS by default, has great Markdown/MDX support, and lets you drop in React/Vue/Svelte components as islands where you actually need interactivity. Using a full app framework for a mostly-static site is a common mistake.
App behind a login (dashboard, SaaS, internal tool) — you probably don't need SSR at all. A plain SPA is a much simpler deployment story. Vite + React + TanStack Router/Query is a strong, boring stack. SvelteKit in SPA mode is also excellent here.
Public app needing SEO and dynamic data — Next.js (React), Nuxt (Vue), or SvelteKit. Next has the biggest ecosystem but the steepest conceptual overhead right now: Server Components, the client/server boundary, and caching semantics take real time to internalize. Nuxt and SvelteKit are meaningfully gentler for comparable capability.
Large team, long-lived enterprise app — Angular deserves a fresh look if you last saw it years ago. Signals, standalone components, and the new control flow syntax modernized it a lot, and its opinionated structure genuinely helps when 30 people touch the same codebase. Nuxt is a good middle ground.
Small team optimizing for velocity and enjoyment — Svelte 5 or Vue 3. Less ceremony, less boilerplate, faster onboarding. The tradeoff is a smaller ecosystem and fewer prebuilt component libraries, so budget time for building things React would have given you off the shelf.
Mobile app too — React, and specifically Expo. React Native's cross-platform story has no real competitor.
Already have a server-rendered backend (Rails, Django, Laravel, Phoenix) — seriously consider not adding a JS framework. Hotwire, HTMX, or LiveView will handle more than people expect, and you skip maintaining a second application.
A few things that matter more than the framework choice itself:
- •What your team already knows. A team fluent in Vue will out-ship the same team learning React, regardless of which is "better."
- •Whether you need SSR at all. This decision drives far more complexity than picking between React and Vue.
- •Escape hatches. How hard is it to do something the framework didn't anticipate? This is where heavily-opinionated meta-frameworks tend to hurt.
One caveat: my knowledge has a cutoff, and this space moves. The broad strokes above are stable, but check current release notes before committing — particularly for Next.js and the newer React meta-frameworks like TanStack Start, which were still maturing as of what I know.
Exact recordShowHideEach response verbatim, unrendered, with line numbers and its sha256
Before baseline
2026-09-17 permalink
- Scored
- answered
- Received
- 2026-09-17 09:24:55 UTC
- Run
- 20260917T090022Z-136fc3
- Served by
- Claude Platform on AWS · HTTP 200 · finish stop
- Size
- 2,540 characters · 1,694 tokens out incl. hidden reasoning · 25.2 s
- React
- Astro
- Next.js
- SvelteKit
- Angular
Highlighted: the names the extractor took as picks, where they appear verbatim (5 of 5).
End of response · 21 lines · 2,540 characters · sha256 057de516069fc6339504c9da48cad67d9680163ade9bbb86c6915c55e0965da4
After this run
2026-09-18 permalink
- Scored
- answered
- Received
- 2026-09-18 09:28:04 UTC
- Run
- 20260918T090022Z-92b6f7
- Served by
- Claude Platform on AWS · HTTP 200 · finish stop
- Size
- 2,926 characters · 2,253 tokens out incl. hidden reasoning · 33.2 s
- Astro
- Vite + React + TanStack Router/Query
- Next.js
- Angular
- Svelte 5
Highlighted: the names the extractor took as picks, where they appear verbatim (5 of 5).
End of response · 25 lines · 2,926 characters · sha256 2db15ba6e695d5f615a35bcb77986b9baca32885bbec5eeef58c7500dd3d401e
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.