News for hackers. Stuff that matters.
Re:Merging Remix and React Router by lazlo_kovacs on Wednesday May 15, 2024 @08:06PM (#40373824)
I never understood the appeal of React Router, the simplest library to get rewritten 5+ times, each time forcing their users to learn a new way of doing routing. It never worked that well either in my experience. The authors seemed addicted to churn and complexity.

I do enjoy Remix though. It works well and the various stacks help you get started pretty quickly. So why take the framework that's well respected and loved, and combine it with the library that's known for its churn? That seems like a lose-lose. You create yet another change for people still on React Router and lose the Remix brand.

Did the Vercel people manage to execute a psyop on Remix? This doesn't feel like the move.

Re:Merging Remix and React Router by madeofpalk on Wednesday May 15, 2024 @08:35PM (#40374009)
I'm sure the React Router/Remix guys are smart, but I don't get the impression that they actually build and maintain real world websites, and the closest they get is a month or two of consulting. They've always been extremely hostile to anything resembling stability, and extremely unreceptive of anyone calling out how unproductive this is.
Re:Merging Remix and React Router by kevlened on Wednesday May 15, 2024 @09:23PM (#40374288)
> extremely hostile to anything resembling stability

Remix has one of the best stars/issue ratios I've ever seen in a large project. They have 27k stars for 228 issues (118 stars/issue). Meanwhile next.js has 121k stars for 2678 issues (45 stars/issue).

Remix also has a robust future flag system to ensure nothing breaks during transitions. https://github.com/remix-run/remix/issues/4598

For larger changes (like the controversial flat routes), they even maintain the old feature so you don't have to upgrade. https://www.npmjs.com/package/@remix-run/v1-route-convention

I don't think the evidence supports your assertion.

Re:Merging Remix and React Router by evantbyrne on Wednesday May 15, 2024 @11:06PM (#40374833)
I want to preface this by saying I don't have a dog in this fight. Not a big react fan in general although I write it for work, and have no opinions on specific routers or 3rd-party state libraries being better or worse than others.

With that out of the way, where is the research showing that this is a good indicator of software reliability? Highly starred projects are left unfinished and abandoned all the time. The thread above goes into details about upgrade challenges. So it seems stars are maybe not such a good indicator of reliability. What about using a star to issue ratio? I've personally seen multiple projects with 10k+ stars that hide their bug reports in the discussions tab. Terraform has a much worse ratio, but would you describe it as much less reliable?

Show me the research.

Re:Merging Remix and React Router by kevlened on Thursday May 16, 2024 @02:15AM (#40375703)
I agree that stars alone don't equate to reliability, which is why I used (the very much imperfect, but better) stars/issue as part of the evidence.

While I'm unaware of research supporting stars/issue, it's a useful rule-of-thumb at the extremes. With React (318), if something isn't working, your code is almost certainly wrong. With Bun (24), if something isn't working, it's likely Bun (sorry, Jarred).

The assertion the Remix creators are "extremely hostile to anything resembling stability" should place Remix at the lowest extreme, but that isn't so.

If you use a metric or rule-of-thumb for evaluating reliability, I'm curious to hear it.

Re:Merging Remix and React Router by evantbyrne on Thursday May 16, 2024 @10:12AM (#40378730)
Gotcha so that is sort of a precursor to a deeper inquiry it sounds like. I'm concerned it sounds like there may be a strong bias in favor of popularity. Maybe that is less of an issue for developers already shopping within a specific stack/philosophy though.

I tend to try and ignore stars, because I've been burned by popular and unpopular projects alike. They also seem to be gamed at times. For an initial evaluation of something I might actually use I look at who the owners are, when the project was last updated, and explore the issue tracker (including closed tickets). That is usually enough to identify projects with major problems. If they pass the initial audit, then the process continues.

Re:Merging Remix and React Router by sa46 on Wednesday May 15, 2024 @09:53PM (#40374470)
I haven’t used Remix, but I regret choosing react-router due to frequent major version upgrades.
Re:Merging Remix and React Router by slimebot80 on Wednesday May 15, 2024 @10:01PM (#40374519)
If you are happy with one version you can just stick to it?

You don't have to update your phone and laptop every year, even if you are made to feel so.

Re:Merging Remix and React Router by crummy on Wednesday May 15, 2024 @11:21PM (#40374897)
In our case we wanted to upgrade another dependency (react-admin) which necessitated a react-router upgrade, which we used throughout the rest of our application, so it was a reasonable amount of work and sticking to the old one was not an option.
Re:Merging Remix and React Router by doomroot on Wednesday May 15, 2024 @10:34PM (#40374669)
I wish this were true. In the modern JavaScript ecosystem you either pin everything or pin nothing.
Re:Merging Remix and React Router by 0xblinq on Thursday May 16, 2024 @01:24AM (#40375458)
You do have to upgrade. At some point incompatibilities between libraries arise, and if neglected for too long at some point it becomes impossible to update everything. Keeping dependencies up to date is an important part of software maintenance.
Re:Merging Remix and React Router by cageface on Wednesday May 15, 2024 @10:14PM (#40374588)
Those breaking changes were especially painful in React Native apps. Thankfully there are some good alternatives now.
Re:Merging Remix and React Router by phantomathkg on Thursday May 16, 2024 @01:11AM (#40375391)
Would you mind sharing what are they?
Re:Merging Remix and React Router by cageface on Thursday May 16, 2024 @02:06AM (#40375653)
Re:Merging Remix and React Router by throwaway11460 on Thursday May 16, 2024 @02:39AM (#40375804)
Wouter is great, I recommend.
Re:Merging Remix and React Router by timw4mail on Wednesday May 15, 2024 @10:00PM (#40374514)
...and completely changing how everything works on each major version change.
Re:Merging Remix and React Router by 0xblinq on Thursday May 16, 2024 @01:23AM (#40375451)
Take one more sir.
Re:Merging Remix and React Router by miunau on Wednesday May 15, 2024 @11:13PM (#40374858)
This is a weird metric.
Re:Merging Remix and React Router by randomdev3 on Thursday May 16, 2024 @03:46AM (#40376102)
I don't think issues are a good measurement for popular repos. Majority of them are just basic skill issues and inability to read 2 pages of docs.

Especially next community seems to be full of people who don't seem to know anything about web development complaining because they don't know how cookies work or something...

Re:Merging Remix and React Router by zoontek on Thursday May 16, 2024 @09:41AM (#40378351)
Stars don't mean usage.

Remix has 21,375 downloads per week according to npm. Next has 6,562,587.

Re:Merging Remix and React Router by uasi on Thursday May 16, 2024 @12:35PM (#40380322)
The remix package is no longer used[1]. Remix's central package is @remix-run/router[2], which has 5,627,846 downloads per week.

[1] https://github.com/remix-run/remix/pull/9433 [2] https://www.npmjs.com/package/@remix-run/router

Re:Merging Remix and React Router by deathtrader666 on Thursday May 16, 2024 @04:04PM (#40382521)
Hey I star projects just as a way of bookmarking them..
Re:Merging Remix and React Router by cqqxo4zV46cp on Thursday May 16, 2024 @05:46PM (#40383656)
Using “star / issue ratio” is a basis for your point is just an indicator that you’re too deep into the JS ecosystem. It reads into weird GitHub metrics to a unique degree.
Re:Merging Remix and React Router by johnmcarthur on Wednesday May 15, 2024 @10:38PM (#40374684)
I can already imagine these comments will be screenshot and mocked at by the React Router/Remix author in Twitter :)
Re:Merging Remix and React Router by aprilthird2021 on Thursday May 16, 2024 @01:05AM (#40375364)
Isn't Remix owned by Shopify? I'm fairly certain Remix is used on some of the Shopify platform / admin pages, that's a fairly large and well-used real world website being maintained in Remix
Re:Merging Remix and React Router by tjosepo on Friday May 17, 2024 @06:27AM (#40388330)
Ryan did mention this in his talk at React Conf.

Shopify has had issues adopting Remix because their existing front-end codebases are massive and they couldn't afford to rewrite them to use Remix.

That's actually the whole motivation behind turning Remix into a bundler plugin. With a bundler plugin, you can incrementally migrate parts of your existing application to use the features of Remix without having to rewrite all of it.

Re:Merging Remix and React Router by ilrwbwrkhv on Thursday May 16, 2024 @03:47PM (#40382370)
They also have been weirdly money focused. Such as moving the react router package to an org called react training. The quintessential routing library of react being sold like that left a bad taste in my mouth. Combined with reacts incredibly poor api, it turned me off react forever. Svelte and vue are both much better.
Re:Merging Remix and React Router by cqqxo4zV46cp on Thursday May 16, 2024 @05:51PM (#40383704)
You’ve hit the nail on the head. The JS ecosystem has this problem generally, but Remix is particularly bad with it. It’s like people don’t spend the time experiencing the problems they’re seeking to fix before parachuting in and “fixing” them with their framework or library or whatever. You can’t expect people to build good, reliable software with your framework without knowing how to actually build good, reliable software yourself.
Re:Merging Remix and React Router by azemetre on Wednesday May 15, 2024 @08:19PM (#40373907)
I don't know if you're aware but the authors of both libraries (react router, remix) are the same two core developers.

I do find their open source libraries a good juxtaposition of engineering philosophy for the tanstack ecosystem.

Tanstack seems to favor making things modular over time so it's easier to create bindings in other libraries while also increasing the enhancements whereas it feels like Ryan Florence and Michael Jackson prefer to get features out faster even if it means throwing away previous code.

I feel like I'd still be using tanstack/router, tanstack/table, and tanstack/query in 2030 compared to even react itself.

Re:Merging Remix and React Router by lazlo_kovacs on Wednesday May 15, 2024 @08:32PM (#40373996)
Yes, I'm well aware. To be honest I was pleasantly surprised with Remix because of my negative experiences with React Router. But now it seems like they've gone back to churn and cheery messages claiming that this is the best iteration, just please ignore the last 4 attempts.
Re:Merging Remix and React Router by mirthflat83 on Wednesday May 15, 2024 @08:57PM (#40374139)
I feel the exact same way.
Re:Merging Remix and React Router by gedy on Wednesday May 15, 2024 @08:30PM (#40373984)
> I never understood the appeal of React Router, the simplest library to get rewritten 5+ times, each time forcing their users to learn a new way of doing routing.

Yeah I hate to be negative, but honestly I was a lot less excited about Remix once I found out was react-router team. While serving a useful need and I appreciate their work, using react-router in a large production app (MPA) was series of frustrating updates and rewrites once we needed to update (we did not have luxury of just leaving old code as is). The iterative churn and rethinking of design scared us off from Remix for the time being.

Re:Merging Remix and React Router by dmalik on Wednesday May 15, 2024 @08:51PM (#40374102)
Remix is just react router with a build system. They replaced the build part with Vite. So the core contribution to the community here is just react router.

If you watch the react conf video by Ryan it explains it all well.

Re:Merging Remix and React Router by paulddraper on Thursday May 16, 2024 @01:05AM (#40375361)
And the router aren't even that good, loads of functions have no useful docs.

You just hope someone has asked it on SO.

Re:Merging Remix and React Router by muteor on Thursday May 16, 2024 @01:13AM (#40375400)
I too was put off Remix because of react-router, it actually looks pretty good but I was holding off to see if they rewrote the entire thing in The future, and they did!

One of my biggest problems with router was not only the constant api changes but the docs being unsearchable because you are never sure which version people are talking about, making all discourse about it a waste of time.

We await the outcome of the react framework wars, I still think react is wrong requiring frameworks to supplement its framework.

Re:Merging Remix and React Router by 0xblinq on Thursday May 16, 2024 @01:20AM (#40375437)
This is all about download counts and who's more popular. That's it.
Re:Merging Remix and React Router by whalesalad on Thursday May 16, 2024 @01:13PM (#40380752)
Glad I am not alone in thinking react router has always been a disaster. Jumped ship ages ago to Vue - this was partly the reason - and I find vue router to be pretty great.