Does anybody like React?

Overall sentiment

  • Opinions are sharply divided: some genuinely enjoy React, others tolerate it for work, and many actively dislike it.
  • Several see it as “the worst option except for all the others we’ve tried”; others call it overhyped, bloated, or even harmful to frontend practice.

Why people like React / JSX

  • The component model (UI as a function of state) is praised for composability and mental clarity, especially compared to jQuery, Backbone, and AngularJS.
  • JSX is widely liked, sometimes more than React itself: mixing markup and logic in one file and reusing plain JS control flow feels natural and expressive.
  • React’s declarative approach to DOM updates is seen as a huge improvement over manual DOM manipulation for complex interactive apps.
  • Some like the ecosystem: GraphQL integration, React Query/TanStack Query, Vite, and tools like the React Compiler that reduce boilerplate.

Major criticisms of React and its ecosystem

  • Hooks are viewed by many as confusing, leaky abstractions with subtle rules and performance traps; some miss the old class lifecycle model.
  • React apps often break web fundamentals (navigation, back button, accessibility), especially in badly built SPAs.
  • The ecosystem is fragmented: every codebase assembles a different stack of routers, state libraries, and data layers, making projects inconsistent and hard to onboard.
  • Server Components and Next.js (under Vercel) are criticized as too “magic,” security‑prone, tightly coupled to specific hosting, and driving React’s direction in opaque ways.
  • React is blamed for frontend bloat, over-engineering simple CRUD apps, and encouraging megabyte bundles for problems solvable with HTML+forms.

SPAs vs server-rendered / lighter stacks

  • Many argue most sites should be multi-page apps with server rendering and small “islands” of JS, using tools like HTMX, Alpine, web components, or vanilla JS.
  • Others counter that rich interactivity, complex state, and “polish” often justify SPA complexity.

Alternatives and comparisons

  • Svelte, Vue, Solid, Angular, Lit, Elm, and web components are all mentioned; each has fans who find them simpler, faster, or more ergonomic.
  • Signals/fine-grained reactivity (Vue, Solid, newer Angular, Svelte runes) are seen by some as a cleaner model than React’s re-render and hooks approach.

Ecosystem, inertia, and hiring

  • React’s dominance is widely attributed to inertia, hiring pool size, and corporate backing, not just technical merit.
  • Many choose it pragmatically (“no one gets fired for choosing React”) while personally preferring other tools.