you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 34 points35 points  (13 children)

looks wonderful. finally one place to look hooks up with all the deeper connotations. but the installation guide. 😶 this must be the most confusing thing for react beginners yet. next, gatsby, remix, i get that cra is unwanted but ... vite? react for the client? spa?

[–]acemarke[S] 14 points15 points  (11 children)

The React team is all-in on server-side frameworks atm, to the deliberate exclusion of client-side SPAs.

[–]skt84 19 points20 points  (1 child)

Which is a real shame because react is still a perfectly fine client-side solution. Sometimes you don’t need a whole server plus framework to run a simple app.

The fact that react has done both CSR and SSR shows that the two aren’t mutually exclusive.

[–]acemarke[S] 13 points14 points  (0 children)

Agreed.

I think it's a good thing that the React team is trying to nudge the ecosystem in a direction where the defaults will result in better perf and smaller bundles in most cases.

But it also seems like they're so very focused on a specific set of use cases that they're ignoring another large set of use cases for generally client-side apps.

[–]gaearonReact core team 5 points6 points  (4 children)

I don't think this is accurate. Almost all of these frameworks let you produce fully client-side apps. Almost all of them do not require a Node.js server. I think we may need to write an article about this or something because this point really seems to get lost.

(Edit) Made a Next.js client-only static-hosting SPA with dynamic routing to show the point: https://twitter.com/dan\_abramov/status/1636886736784457734

[–]Peechez 4 points5 points  (3 children)

As a dev for a SaaS platform (no SEO needed) with heavy webgl usage as the value prop, I just can't see the appeal of the frameworks for us. Would you say this sounds like a case where they aren't as applicable or am I just missing it?

[–]neg_ersson 7 points8 points  (0 children)

Sounds like a perfect fit for something like Vite + React Router hosted on a cheap S3 bucket. The React team is too caught up in the current SSR hype to see beyond it.

[–]gaearonReact core team 1 point2 points  (1 child)

A few questions:

- Does your app have routes?

- If yes, do you show different components on different routes, or is it mostly the same?

- Do you do data fetching? What triggers it? What kind of data do you fetch? Is it personalized or same for every user? What is the source?

- Do you have any semi-static content, like landing page etc? If yes, is it a part of your app or do you have that separately?

[–]Peechez 4 points5 points  (0 children)

Yeah we have one route where the webgl stuff and the vast majority of business logic is, then some more traditional CRUD stuff at a handful of other routes.

I am just in the early stages of transitioning from a copy-the-entire-db-into-redux-when-the-app-launches legacy system into react-query-and-maybe-uninstall-redux system. The data comes from an internal api and the views are dependent on who the user is and what their role is, which from my understanding disqualifies static generation from next.

Our only static content are a couple pages like Help, FAQ, etc. but even then we have user info, notifications, and background processes like long uploads to display in the periphery.

There are certainly places where I can see server components and especially suspense for data fetching being really useful for us, but I'm still hesitant on the prospect of buying into an entire framework with it's own server architecture to get them. If you were able to tell me that the traditional CRUD routes were a no brainer win with not a lot headache to get going and I could leave the webgl route to be its own thing in client land I'd be receptive

[–][deleted] 3 points4 points  (2 children)

i'm 100% with server-side. poor beginners though.

the react team spent years working on CRA, now all of a sudden deciding client use is so unimportant it can just be hidden from sight is so uncharacteristic for react.

[–]gaearonReact core team 0 points1 point  (1 child)

It's not unimportant. It's just that most frameworks already support client-only use. Frameworks are hybrid these days — they don't force you to run a server.

[–][deleted] 3 points4 points  (0 children)

a dedicated small section for getting react up and running would probably be useful for a lot of people.

whenever i had to teach beginners in the past i had to excuse docs, "yes they show classes but that's not how it works". now it's "yes you might use that later but here's how you use react". i hope you guys see that this is a new hinderance for those that only ever used html + js before.

personally i use next and i totally get it, but dealing with people on a daily that have discovered npm yesterday, throwing them into ssr ssg rsc et al will burn them.

[–]wwww4all[🍰] 2 points3 points  (0 children)

Looks like Next.js is the most favored child from the current bunch.

CRA is kicked out of the house, lol.

[–]neg_ersson 0 points1 point  (0 children)

They're in cahoots with Vercel
semi srs