This diagram is meant to represent the sweet spot not the overall range. I think reasonable range for these solutions can go a bit beyond this. Also worth noting typical RSCs cover the largest "sweet" range, meaning the widest range of sites but is also overshadowed on all sides.
October 31, 2025 at 9:20 PM
This diagram is meant to represent the sweet spot not the overall range. I think reasonable range for these solutions can go a bit beyond this. Also worth noting typical RSCs cover the largest "sweet" range, meaning the widest range of sites but is also overshadowed on all sides.
Yep understood + agree. Working on a canonical tutorial.
Server-side version of refresh is new, previously folks were using revalidatePath() to accomplish something similar but now that we have it it's the right way to refresh dynamic RSCs. Basically makes your UI look as if you +R.
Server-side version of refresh is new, previously folks were using revalidatePath() to accomplish something similar but now that we have it it's the right way to refresh dynamic RSCs. Basically makes your UI look as if you +R.
October 27, 2025 at 5:27 PM
Yep understood + agree. Working on a canonical tutorial.
Server-side version of refresh is new, previously folks were using revalidatePath() to accomplish something similar but now that we have it it's the right way to refresh dynamic RSCs. Basically makes your UI look as if you +R.
Server-side version of refresh is new, previously folks were using revalidatePath() to accomplish something similar but now that we have it it's the right way to refresh dynamic RSCs. Basically makes your UI look as if you +R.
Since the server export of React Router RSCs is just a `(req: Request) => Response`, it should be fairly simple to run it in a service worker as long as you’re not using any Node APIs
October 18, 2025 at 7:14 PM
Since the server export of React Router RSCs is just a `(req: Request) => Response`, it should be fairly simple to run it in a service worker as long as you’re not using any Node APIs
If you’re curious how React Server Components integrate with a bundler, how “use client” actually works, and how RSCs can even benefit client rendered apps, tune into my talk at React Conf at 2:30 PST today!
October 8, 2025 at 4:25 PM
If you’re curious how React Server Components integrate with a bundler, how “use client” actually works, and how RSCs can even benefit client rendered apps, tune into my talk at React Conf at 2:30 PST today!
The folks #RSC’s Macbeth with Sam Heughan and Lia Williams – rehearsal photos released and shared via @whatsonstage.bsky.social
www.whatsonstage.com/news/rscs-ma...
www.whatsonstage.com/news/rscs-ma...
RSC’s Macbeth with Sam Heughan and Lia Williams – rehearsal photos released
The new production of the Scottish play features on-stage seating
www.whatsonstage.com
September 25, 2025 at 8:53 AM
The folks #RSC’s Macbeth with Sam Heughan and Lia Williams – rehearsal photos released and shared via @whatsonstage.bsky.social
www.whatsonstage.com/news/rscs-ma...
www.whatsonstage.com/news/rscs-ma...
tl;dr: cache invalidation is hard.
That’s why React.cache() shipped, but only in server components. RSCs only run once, so you don’t need to invalidate the cache and re-render.
That’s why React.cache() shipped, but only in server components. RSCs only run once, so you don’t need to invalidate the cache and re-render.
September 15, 2025 at 12:16 AM
tl;dr: cache invalidation is hard.
That’s why React.cache() shipped, but only in server components. RSCs only run once, so you don’t need to invalidate the cache and re-render.
That’s why React.cache() shipped, but only in server components. RSCs only run once, so you don’t need to invalidate the cache and re-render.
You can also have your SPA fetch RSCs from your API endpoint, the same way SPAs already fetch JSON from the server. That’s exactly what the first RSC demo did. No SSR.
github.com/reactjs/serv...
github.com/reactjs/serv...
April 10, 2025 at 12:50 PM
You can also have your SPA fetch RSCs from your API endpoint, the same way SPAs already fetch JSON from the server. That’s exactly what the first RSC demo did. No SSR.
github.com/reactjs/serv...
github.com/reactjs/serv...
So I've finally been using @remix_run for a new project over the past few weeks, and it has really been a joy to use. It's been such a solid platform, and the new features coming down the road like Vite, client loaders, and eventually RSCs give me confidence in it going forward.
November 16, 2024 at 4:05 AM
So I've finally been using @remix_run for a new project over the past few weeks, and it has really been a joy to use. It's been such a solid platform, and the new features coming down the road like Vite, client loaders, and eventually RSCs give me confidence in it going forward.
Another React component library ditching Emotion (runtime CSS in JS)
The main motivator is to make these component libraries compatible with RSCs, but I think all kinds of applications will see a long-term benefit from this trend. https://twitter.com/leeerob/status/1683546952393281537
The main motivator is to make these component libraries compatible with RSCs, but I think all kinds of applications will see a long-term benefit from this trend. https://twitter.com/leeerob/status/1683546952393281537
November 16, 2024 at 4:03 AM
Another React component library ditching Emotion (runtime CSS in JS)
The main motivator is to make these component libraries compatible with RSCs, but I think all kinds of applications will see a long-term benefit from this trend. https://twitter.com/leeerob/status/1683546952393281537
The main motivator is to make these component libraries compatible with RSCs, but I think all kinds of applications will see a long-term benefit from this trend. https://twitter.com/leeerob/status/1683546952393281537
RSCs were too complicated
November 23, 2024 at 12:48 AM
RSCs were too complicated
Yeah RSCs in next anyway are serial I think
February 16, 2025 at 2:14 PM
Yeah RSCs in next anyway are serial I think
While web components are universal, framework-specific components like RSCs enable advanced features such as SSR and SSG. They also allow developers to create custom implementations using provided APIs, maximizing flexibility and extensibility.
November 21, 2024 at 3:40 PM
While web components are universal, framework-specific components like RSCs enable advanced features such as SSR and SSG. They also allow developers to create custom implementations using provided APIs, maximizing flexibility and extensibility.
My blog post on RSCs is almost done. It’s a long one.
January 14, 2025 at 4:36 AM
My blog post on RSCs is almost done. It’s a long one.
No, RSCs are like JSON. They’re a serializable format that enables the server to send components to the client. They’re not an opinionated framework. You can build an opinionated framework on top of them.
January 26, 2025 at 9:56 PM
No, RSCs are like JSON. They’re a serializable format that enables the server to send components to the client. They’re not an opinionated framework. You can build an opinionated framework on top of them.
Good article. Speaking of RSCs, I was expecting the post to touch on using this pattern with server components. Uncontrolled lets the client hold the state exclusively, while passing a value and a callback with the “use server” directive lets the server regain control.
November 13, 2024 at 3:50 PM
Good article. Speaking of RSCs, I was expecting the post to touch on using this pattern with server components. Uncontrolled lets the client hold the state exclusively, while passing a value and a callback with the “use server” directive lets the server regain control.
As for calls that yield a promise, I imagine those to generally be passed from RSCs where client components just have use(promiseProp), and if they indeed are client-only data-fetching, then caching is a necessity, React or not. But frameworks or libraries take care of that better than I ever could.
June 12, 2025 at 8:40 AM
As for calls that yield a promise, I imagine those to generally be passed from RSCs where client components just have use(promiseProp), and if they indeed are client-only data-fetching, then caching is a necessity, React or not. But frameworks or libraries take care of that better than I ever could.
Don't need SSR or have an existing client-rendered app? You can just request RSCs from client components.
This lets you move heavy things like markdown parsing to the server, streaming the resulting components to the client.
This lets you move heavy things like markdown parsing to the server, streaming the resulting components to the client.
March 18, 2025 at 4:06 PM
Don't need SSR or have an existing client-rendered app? You can just request RSCs from client components.
This lets you move heavy things like markdown parsing to the server, streaming the resulting components to the client.
This lets you move heavy things like markdown parsing to the server, streaming the resulting components to the client.
Intermediate React v6 is happening tomorrow on @frontendmasters.com! Stream it for free on the home page!
Really excited to do this one, we're covering all sorts of React server shenanigans including RSCs as well as how to make React be and act performant.
Starts tomorrow at 9:30-ish Central!
Really excited to do this one, we're covering all sorts of React server shenanigans including RSCs as well as how to make React be and act performant.
Starts tomorrow at 9:30-ish Central!
March 12, 2025 at 3:30 PM
Intermediate React v6 is happening tomorrow on @frontendmasters.com! Stream it for free on the home page!
Really excited to do this one, we're covering all sorts of React server shenanigans including RSCs as well as how to make React be and act performant.
Starts tomorrow at 9:30-ish Central!
Really excited to do this one, we're covering all sorts of React server shenanigans including RSCs as well as how to make React be and act performant.
Starts tomorrow at 9:30-ish Central!
As for #1, it’s because there is no official support for RSCs on Vite yet and there is on Parcel. Work on the Vite implementation is in progress:
feat: add react-server-dom-vite by hi-ogawa · Pull Request #33152 · facebook/react
Summary
As a continuation from the discussion on Jacob's PR #31768, this is a new PR to add the react-server-dom-vite package and fixtures/flight-vite. To begin with, thank you to the React tea...
github.com
May 21, 2025 at 12:10 AM
As for #1, it’s because there is no official support for RSCs on Vite yet and there is on Parcel. Work on the Vite implementation is in progress:
You can still build this with RSC! The original demo of RSCs was a SPA with no SSR that just fetched JSON from an endpoint.
The difference is that the JSON was the RSC payload, with jsx and client bundles with the data inserted, instead of only the data.
The difference is that the JSON was the RSC payload, with jsx and client bundles with the data inserted, instead of only the data.
June 2, 2025 at 11:12 AM
You can still build this with RSC! The original demo of RSCs was a SPA with no SSR that just fetched JSON from an endpoint.
The difference is that the JSON was the RSC payload, with jsx and client bundles with the data inserted, instead of only the data.
The difference is that the JSON was the RSC payload, with jsx and client bundles with the data inserted, instead of only the data.
I’m optimistic that it’s moving in the right direction. Next 13 feels kind of like it’s in beta - not all the features work as expected, but the fact that it’s backwards compatible solves a lot of those issues.
I think RSCs are the future.
I think RSCs are the future.
June 21, 2023 at 8:39 PM
I’m optimistic that it’s moving in the right direction. Next 13 feels kind of like it’s in beta - not all the features work as expected, but the fact that it’s backwards compatible solves a lot of those issues.
I think RSCs are the future.
I think RSCs are the future.
the similarities that i find interesting are related to zeitgeist and sentiment at inflection moments in an ecosystem and not a stiff triple equals comparison of RSC and Angular 2
ngl I enjoy chaos and change and will keep poking at RSCs
ngl I enjoy chaos and change and will keep poking at RSCs
November 4, 2024 at 5:03 PM
the similarities that i find interesting are related to zeitgeist and sentiment at inflection moments in an ecosystem and not a stiff triple equals comparison of RSC and Angular 2
ngl I enjoy chaos and change and will keep poking at RSCs
ngl I enjoy chaos and change and will keep poking at RSCs
The "opinionated 'official' way to integrate with Vite" React collaboration is scoped to RSCs.
The PR is for a shared package that would support building RSC with Vite.
github.com/facebook/rea...
The PR is for a shared package that would support building RSC with Vite.
github.com/facebook/rea...
React server dom vite by jacob-ebey · Pull Request #31768 · facebook/react
Summary
This adds a new react-server-dom-vite package implementing the RSC touch points in a way that is suitable for use with the Vite bundler.
Differences from other implementations:
No prescrib...
github.com
February 20, 2025 at 12:26 AM
The "opinionated 'official' way to integrate with Vite" React collaboration is scoped to RSCs.
The PR is for a shared package that would support building RSC with Vite.
github.com/facebook/rea...
The PR is for a shared package that would support building RSC with Vite.
github.com/facebook/rea...
I haven't tried Remix but generally speaking, for monolithic React-only fullstack apps, I agree that it's better to not have an API at all. It's just that I haven't been happy with the developer experience of using RSCs / App Router. So it's more of an implementation issue than a paradigm issue.
December 15, 2024 at 2:52 PM
I haven't tried Remix but generally speaking, for monolithic React-only fullstack apps, I agree that it's better to not have an API at all. It's just that I haven't been happy with the developer experience of using RSCs / App Router. So it's more of an implementation issue than a paradigm issue.
Meet Bridget Watkins, the new Regional Soils Coordinator #RSC for southern Western Australia!
Read more about Bridget here: soilscienceaustralia.org.au/smart-farms/...
The RSCs and the #SmartSoilsCoP are supported by the Australian Government through the #NHT program.
Read more about Bridget here: soilscienceaustralia.org.au/smart-farms/...
The RSCs and the #SmartSoilsCoP are supported by the Australian Government through the #NHT program.
Regional Soil Coordinator - Bridget Watkins - Soil Science Australia
[email protected]
soilscienceaustralia.org.au
February 27, 2025 at 4:45 AM
Meet Bridget Watkins, the new Regional Soils Coordinator #RSC for southern Western Australia!
Read more about Bridget here: soilscienceaustralia.org.au/smart-farms/...
The RSCs and the #SmartSoilsCoP are supported by the Australian Government through the #NHT program.
Read more about Bridget here: soilscienceaustralia.org.au/smart-farms/...
The RSCs and the #SmartSoilsCoP are supported by the Australian Government through the #NHT program.