Claude on Question 31, Sep 18
Which JavaScript framework should I start a new project with today?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 recordShowHideThe model id, the run, the verbatim text with line numbers and its full sha256
- 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