It's not just you, Next.js is getting harder to use

Overall Sentiment on Next.js and Its Direction

  • Many early adopters loved older Next.js (pages router, simple SSR/SSG, great docs) and now feel it has become complex, brittle, and slower.
  • The App Router, RSC, and default server components are seen by many as confusing and hard to reason about, especially when mixing client/server logic.
  • Some still like the App Router and server actions, praising direct server function calls and reduced boilerplate for internal APIs, but acknowledge the learning curve.

Developer Experience, Performance, and Footguns

  • Complaints about slow dev server, heavy memory use, worse build times vs earlier versions.
  • Caching is described as opaque and inconsistent between dev and prod; v14’s caching behavior eroded trust.
  • Auth is widely described as easy to get wrong, with subtle caching and multi-layer checks; examples of large vendors shipping flawed patterns.
  • File-based routing draws mixed reactions: helpful for small/medium apps, but regarded as constraining and awkward in the App Router (e.g., page.tsx naming, complex modal patterns, language-prefixed routes remounting entire trees).

React, Vercel, and Incentives

  • Several comments argue Vercel’s business model (selling compute) incentivizes pushing SSR/RSC and complexity, with limited clear benefit for most apps.
  • Some feel React itself has been pulled in this direction, losing its earlier simplicity.

Alternatives and Migration Paths

  • Many are considering or moving to: Remix, SvelteKit, Nuxt, Astro, Deno Fresh, Vike, SolidStart, Inertia.js, HTMX with traditional backends, and batteries-included frameworks like Laravel/Rails/Django.
  • Angular and Vue/Nuxt are praised by some for stability and consistency; others note Vue’s own breaking transitions (Vue 2→3, Nuxt legacy apps).
  • Some recommend staying on Next’s pages router; others are abandoning Next altogether after painful upgrades.

Broader JS/Framework Fatigue

  • Strong theme of exhaustion with constant churn, over-engineering, and toolchain bloat.
  • Some advocate going “back” to SPAs + simple REST backends, or classic SSR (PHP/Django/Rails) with minimal JS or HTMX.
  • There is a sense that enterprise pressures and hype cycles drive complexity at the cost of developer productivity.