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.