Claude on Question 31, Sep 25
Which JavaScript framework should I start a new project with today?Short answer: React + Vite if you want the safest bet, or SvelteKit / Nuxt if you're a small team optimizing for how fast and pleasant the work actually is.
Longer answer, because the right pick genuinely depends on a few things:
By project type
- •Content-heavy site (marketing, docs, blog, e-commerce catalog) → Astro. Ships almost no JS by default, and you can drop in React/Vue/Svelte components as interactive islands where you actually need them.
- •SPA / internal dashboard / behind a login → Vite + React (or Vue, or Svelte). You don't need a meta-framework. SEO doesn't matter, so skip the SSR complexity entirely. This is the most underrated option — a lot of people reach for Next.js and inherit a pile of server/client boundary problems they never needed.
- •Public-facing app that needs SSR and SEO → Next.js (React), Nuxt (Vue), or SvelteKit (Svelte). All three are solid. Next.js has the biggest ecosystem and the most churn; Nuxt and SvelteKit are calmer.
- •Large enterprise team, want strong conventions → Angular. Its reputation lags its current state — signals and standalone components modernized it substantially. Batteries-included, opinionated, good when you have many developers who need guardrails.
Tiebreakers
- •Hiring, contractors, or needing Stack Overflow answers to exist → React. It's not the best framework, it's the one with the deepest gravity well.
- •Small team, you control the stack, you value DX → Svelte 5 or Vue 3. Both have meaningfully less ceremony than React. Svelte's runes and Vue's composition API are, in my view, nicer reactivity models than hooks.
- •Team already knows one of these → use that. This dominates almost every other consideration. Framework choice is rarely the thing that sinks a project.
What I'd want to know to be more useful: Is it public or behind auth? Solo or team? Do you need SEO? Where are you deploying (Vercel/Cloudflare/your own box)? Any existing stack to fit into?
One caveat: my knowledge has a cutoff, and this ecosystem moves fast — there may be newer releases or shifts I'm not aware of. The structural advice above should hold up, but check current versions and release notes before committing.
Exact recordShowHideThe model id, the run, the verbatim text with line numbers and its full sha256
- Scored
- answered
- Received
- 2026-09-25 09:23:04 UTC
- Run
- 20260925T090007Z-f08d1f
- Served by
- Claude Platform on AWS · HTTP 200 · finish stop
- Size
- 2,247 characters · 1,974 tokens out incl. hidden reasoning · 30.2 s
- React + Vite
- Astro
- Next.js
- Angular
- Tiebreakers
Highlighted: the names the extractor took as picks, where they appear verbatim (5 of 5).
End of response · 20 lines · 2,247 characters · sha256 773666947628f31109a14221eafe185ed953336dee0b8bf97eb319f8d500d4e5