blog.isquaredsoftware.com
The State of React and the Community in 2025 - Mark's Dev Blog
However, I've observed and experienced that **the React community has had a growing sense of frustrations and disagreements on where React is headed, how it's developed, and the recommended approaches for using React, as well as the interactions between the React team and the community**. This in turn overlaps with dozens of different arguments that have ricocheted around the React and general web dev communities in the last few years, as well as specific technical concerns with how React works, comparisons with other similar JS frameworks, and how web apps should be built going forward. … The flexibility and variety of ecosystem options has been both a strength and a weakness. You *get* to choose the exact combination of tools you need for your project... but you also *have* to choose a combination of tools. That leads to decision fatigue, variations in project codebases, and constant changes in what tools are commonly used. … This ties into several other related points of concern: - Next is recommended first in the React docs, and the Next App Router is also mentioned as the main example under "Which features make up the React team’s full-stack architecture vision?" - Next is still the only production implementation of RSCs - React team members have been quoted as saying that "This Next release is the real React 18" … ### Concern: React Only Works with Next 🔗︎ I've seen multiple comments online with people saying, either seriously or wonderingly, that "React only works with Next now". This is easily refuted. **Even just looking at the "Start a New React Project" page shows other frameworks that are *not* Next**, as well as the somewhat infamous "Can I use React without a framework?" section. … It's also worth noting that many of the features in React 19 and 19.1 are client-only. If anything, the community has over-estimated the amount of effort put into server-side functionality, and missed the amount of effort put into client-side features. … Every truly efficient React setup was custom, different, and unachievable with Create React App. > These user experience problems are not specific to Create React App. They are not even specific to React. For example, apps created from the Vite homepage templates for Preact, Vue, Lit, and Svelte suffer from all of the same problems. These problems are inherent to purely client-side apps with no static site generation (SSG) or server-side rendering (SSR). > If you build entire apps with React, being able to use SSG/SSR is important. The lack of support for them in Create React App is glaring. But it's not the only area where Create React App is behind … I've also had conversations with the React team where they directly told me that they have heard many of the external complaints about React apps having bad loading times and overall poor performance. So, the frameworks emphasis is a direct response to that, with the goal of getting more apps to have decent performance by default. Based on that, we can summarize the React team's stance as: … - Frameworks add many additional features and functionality, but that's also added complexity to learn, making them less suitable for beginners that are just trying to get a handle on how to use React at all. - The added complexity can also be a trap that leads to confusion, such as accidentally using Context or hooks in Server Components (which throws errors) - Many companies may not be running JS backends, and may even have rules and restrictions against that - Frameworks with server functionality do require specific hosting to run, whereas a pure SPA can be trivially hosted anywhere that serves static HTML and JS (including Github Pages and Amazon S3) - While the *need* to pick and choose your libraries has often been a source of frustration for React users, it does enable customizing projects to meet your specific needs. Opinionated frameworks remove the need to make most of those decisions, but can also limit your ability to customize behavior later. … (SPA routers & loaders are a mess & underserved!) > It's not about React or Vite. It's the ecosystem. It's painful to realize that React won't encourage the traditional "non-framework" as strongly as the "new ways". The "React without a framework" section is tucked away in the docs and depressing. > As a non-Node backend company we see those docs as a sign that we don't align with React's primary direction anymore.
Related Pain Points7件
Create React App Limitations and Eject Dilemma
7Create React App presents a false choice: either stick 100% with the preset or completely eject and lose all updates. It lacks support for server-side rendering and static site generation, creating significant limitations for production applications. The eject mechanism is inflexible and unforgiving.
Performance Issues: Unnecessary Re-renders and Bundle Size
7React applications suffer from unnecessary re-renders, large bundle sizes, slow initial page loads, memory leaks, and poor mobile performance. These issues are partly inherent to client-side SPAs lacking server-side rendering or static site generation.
RSC introduces client confusion, development complexity, and latency concerns
6React Server Components (RSC) create confusion about client-server boundaries, increase development complexity, and introduce latency. Simple applications feel overengineered due to RSC requirements, creating a steep learning curve and performance concerns with cold starts on serverless platforms.
Limited Flexibility and Customization in Next.js Framework
6Next.js's conventions and built-in features, while streamlining development, limit flexibility for custom configurations or workflows. Companies with unique requirements struggle with routing, data fetching, or build process customization.
React Ecosystem Fragmentation and Too Many Choices
6Developers face overwhelming fragmentation across state management (Redux, Zustand, Context), routing (React Router, etc.), server-side rendering (Next.js, alternatives), and other core concerns. 11% of developers specifically cited ecosystem complexity as a pain point, describing it as navigating competing solutions and rapidly evolving metaframeworks.
Community Fragmentation and Disagreement on React Direction
5The React community exhibits growing frustration and disagreement about where React is headed, how it's developed, and recommended approaches for using React. Tensions exist between React team recommendations (full-stack, server components) and community concerns about complexity, accessibility, and backwards compatibility.
Poor Community Support Channels and Documentation
4React community channels like Discord suffer from poorly formatted unclear questions and lack of expert engagement. Even clear, answerable questions receive poor responses compared to other language communities. Documentation is often incomplete or depressing for non-Node.js backend use cases.