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.tsxnaming, 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.