Next.js: The "Versatile" React Framework That Can't Handle Dynamic Routes

16 batchfy 18 5/31/2025, 3:53:45 AM github.com ↗

Comments (18)

tudorconstantin · 1d ago
Am I the only one thinking that going back full circle to server side rendering, but to a way more convoluted way of having it, is actually a regression rather than evolution technologically? We had SSR since the times of Perl, PHP, Python, Ruby and even express. But in a way more straight forward way of doing it: here’s some HTML, with some db queries that takes data, puts it in said HTML and sends it to the browser. Today we have react components that can be executed both on the server and on the client, we need at least 2 servers - one for the frontend and one for the backend, we have to hydrate the components when we render them server side, but not when rendering them in the browser, etc. I feel like we’re inventing stuff just because we can and there’s a huge cohort of engineers who complicate their development experience just because.
genatron · 1d ago
It has been full circle indeed. React is great for front-end development but with the need for having some pre-rendering (e.g. SEO) it's understandable why server-side re-entered the picture. However, with Next it has been slower build times and various twists and turns (a lot of the same things PHP was always bashed for). That's why for SPA apps we now default to Vite + react-router for a 10x speed up in build times on the same hardware.
antisol · 1d ago
You are not the only one thinking this. A couple of years ago I was working with some people who were using next.js.

For some feature they wanted, they explained to me how nextjs has this great "feature", which was "really exciting" and allowed all kinds of fancy stuff that I've been doing since about 2003. They were going to turn on next's server-side rendering.

My immediate reaction was to point out "congratulations, you've just reinvented PHP, only with a much much worse language and two extra servers".

A lot of these "solutions" use three servers, not the two you mention: you use one server you don't have any control over, e.g google static hosting, to host the "compiled" static stuff - then you have that point at a server running node and another copy of all your terrible javascript, and then finally a third server running some more sensible stack, which could easily and more cleanly do the job of the other two using tech that isn't trash.

It's called "progress", and people like you and me just need to get with the times, it seems.

mdhb · 18h ago
It’s primarily the react crowd specifically who have been off doing their own thing for many years at this point and never seem to look outside their ecosystem and are stuck in this bizarre infinite loop of just reinventing the wheel constantly, never really improving anything just chasing one new buzzword after another. It’s really unlike any other dev or engineering ecosystem I’ve ever seen in over 25 years.
batchfy · 1d ago
Next.js claims to be a versatile React framework, yet it doesn’t support something as fundamental as dynamic routing in a single-page app. The issue was raised by one of their own developers—two years ago—and it's still unresolved. I genuinely don’t understand the hype. Everyone seems to be using Next.js, and the internet is flooded with tutorials like it’s the holy grail of React frameworks.
lolinder · 1d ago
This was your contribution to that thread last month [0]. Now a month after that insightful contribution you're on HN posting editorialized titles trying to get sympathy? Given your behavior in that thread I'm just impressed at how well the Vercel folks handled your aggression.

Maybe it's time to take your own advice and try a different framework instead of wasting time trashing on one you don't like.

[0] https://github.com/vercel/next.js/discussions/64660#discussi...

antisol · 1d ago
It seems someone hasn't been very thorough in their investigation.

Actually, this user has been posting in this thread for months - the earliest post I saw was in January. The user posted several times asking for updates as to whether this feature was planned or not, fairly politely it seems to me, and was totally ignored as far as I can see.

After repeatedly asking for updates and having no response whatsoever, it seems they became disillusioned. Which I think isn't unreasonable - it's my opinion that it's pretty rude for a maintainer to ignore reasonable questions put to them, and that it's quite reasonable to be offended when you are ignored in this way. You talk about "aggression", I say ignoring people is an act of aggression, and it seems to me that this user has simply responded in kind.

We could get into a discussion on whether a maintainer has any responsibility to respond to users asking questions, and then use that as a basis for deciding whether specific posts by this user were justified or not, but my point is that the picture you paint with your post is inaccurate and incomplete. At best.

lolinder · 1d ago
No, I was very thorough: I saw every comment and pulled out the obscene, aggressive, offensive acrostic embedded in months of harassing tagging of the target of that acrostic because that recent pattern of behavior overshadows everything else. There's no excuse for that entry no matter how frustrated they get.

Vercel owes them nothing—and the specific employee OP chose as a target owes them even less—and this entitled behavior is a long-standing plague on open source that needs to be called out and soundly condemned. If they need the feature so desperately they can add it themselves (Vercel already said it's something they want to implement!) or switch frameworks.

jemiluv8 · 1d ago
This has been a plague for so long it nearly threatened the rails project. It also inspired a very interesting article https://dhh.dk/2012/rails-is-omakase.html about the maintainer that provides a framework of sorts for thinking about issues regarding open source entitlement
antisol · 1d ago
Interesting, thanks for sharing.

...but did you notice how the entire scenario presented in this article is predicated on the person who made their suggestion actually getting a response?

"I'm sorry, but hotdogs don't really fit our sushi menu, and while you may not care for unagi, we picked it for a reason. But thanks for the suggestions!"

Totally reasonable response. Polite. Reasonable explanation. 10/10 response. Totally unreasonable to then start insisting that hot dogs be added.

The example scenario isn't "person asks the waiter for a hot dog; waiter just keeps walking past them, blanking them as if they don't even exist".

I would be curious to know why OP chose to post this today, 3 weeks after they said they were working on it. That's an interesting detail.

lolinder · 1d ago
> The example scenario isn't "person asks the waiter for a hot dog; waiter just keeps walking past them, blanking them as if they don't even exist".

First: that scenario is actually still just fine when the establishment is a soup kitchen. When the people providing the service are providing it for free funded entirely out of their own pocket then no user of the free service is entitled to anything, ever.

Second: that isn't an accurate description of what happened, as you should know because you read the thread in full. What actually happened is that a maintainer responded to the issue back in January with a soft timeline. OP began harassing that maintainer less than halfway through the provided timeline.

When they got ignored for just over a week (which is, again, entirely reasonable especially given that a timeline was already offered) OP proceeded to write not one but three "FUCKUJimmy" acrostics further harassing the maintainer who had provided the initial timeline.

Then, on May 9, which is well within the initial estimate, the maintainer provided an update saying that the timeline had to be pushed back. OP's reaction to that was to try to bring the project hate on HN.

In what universe is any of this behavior by OP acceptable?

antisol · 1d ago
> a maintainer responded to the issue back in January with a soft timeline

It seems I missed that comment (https://github.com/vercel/next.js/discussions/64660#discussi...).

My apologies. There were a lot of comments.

I stand corrected, withdraw my support of OP's behaviour, and agree that it's not acceptable.

---

> no user of the service is entitled to anything, ever.

I say everyone is entitled to basic human decency and acknowledgement of their existence. I say that the waiter walking past and blanking them is rude and a dick move, and not "totally fine" at all. While you are correct that the user isn't entitled to the 10/10 polite response/explanation given in the article, they are entitled to some sort of basic human decency. The waiter blanking them and the waiter responding by calling them a cunt with no provocation are both aggression.

I also say that the "soup kitchen" analogy you gave doesn't really hold here - didn't you refer to that maintainer as "an employee"? So it's that person's job to respond to issues. Which entitles people asking them questions to a response. (Which, as I concede above, he did actually get)

But now we're debating philososophy, which I specifically didn't want to do. And I've conceded that in this instance your position on OP's behaviour is correct.

lolinder · 1d ago
Thanks, I hadn't read that before and it's a great piece!

> If most things on the menu disgust you, what on earth are you still doing at the table? The door is right over there, try not to slam it on your way out.

jemmyw · 1d ago
Why not use something else then? I wrote my own router, when I outgrew that I wrote an extension to react router to do the extra thing I needed. Complaining about stuff never gets you far with software written by others.
nine_k · 1d ago
Vercel must be good at marketing. They are also good at offering Next.js hosting. They sustain that notion of Next.js being a natural choice.

Next.js offers some nice things as SSR and bundle slicing so that the initial load is (theoretically) way faster. There are other tools which do that, too. I personally find TanStack a more compelling "batteries included" proposition, despite its terrifying function signatures sometimes.

sebmellen · 1d ago
I recently had to migrate a large project off of Next.js because of this issue. Have you tried TanStack Router? It is so many infinitely times better than Next.js for SPAs (and honestly most React use cases) that I can’t believe it’s not better known.

https://tanstack.com/router

fixprix · 1d ago
Did you miss the comment where they said, "We’re still planning to address this within the next few months."?

Just because your niche issue isn't resolved, it is kind of a jerk move to blast them on HN especially when they've recently replied saying the issue is on their radar.

In less popular open source projects this is what drives devs to abandon them.

nhinck2 · 1d ago
I love when these threads pop up.

It's fascinating to see people go nuclear over small issues and then take it public like everyone else should care.