TMiR 2025-06: Vercel shakeups, new React Compiler docs
Transcript from Tuesday July 1st, 2025
We had some problems with transcript generation this month, downstream of the audio recording issues. Sorry! Fixed for July.
- Job market FRED data, Layoffs.fyi, Trueup.io
- New releases
- Shadcn
- updated Calendar component
- Moving from @radix-ui/... to radix-ui
- Recharts v3.0
- Vite 7.0 is out!
- Biome v2
- Announcing Oxlint 1.0 | VoidZero
- Prettier 3.6: Experimental fast CLI and new OXC and Hermes plugins!
- Experimental "fast CLI" support, first discussed Nov 2023 👀
- Jest 30
- React Native 0.80
- Safari v26 beta
- Apollo Client 4 RC1
- May actually ship pre-compiled with the React Compiler (discussion with Lenz and Joe)
- Shadcn
- Sponsored by Infinite Red
- Main Content
- Mark's "The State of React and the Community in 2025" (slides)
- Remix direction?
- Debate over Radix UI status
- Shadcn has thoughts on switching component libraries
- âš¡ Lightning round âš¡
- Conferences (React, Javascript)
- React Nexus July 3-5 Bangalore, India
- Big Sky Dev Con Aug 2 Bozeman, MT, USA
- Kansas City Developer Conference Aug 13-14 Kansas City, KS, USA
- React Universe Conf Sept 2-4, 2025. Wrocław, Poland
- WaysConf Sept 16-17
- CascadiaJS Sept 18-19 Seattle, WA, USA
- SquiggleConf Sept 17-18 Bostom, MA, USA
- React Conf is back Oct 7-8, Las Vegas, NV, USA
This Month in React: June, 2025
[00:00:00] 1-vcarl: Hi, Carl here. Just a quick note before we get into this episode. We had a little bit of an issue with the audio recording, so the quality is a little bit lower than I usually go for. Sorry about that. We'll do better next month.
[00:00:11] Hello everyone. Thank you for joining us for the June edition of this month in React, where we recap and digest recent developments in the ever evolving react and web ecosystem. We are coming to you live here in Reactiflux, the place for professional React developers.
[00:00:27] We're supported by infinite red. Consultancy that works in React Native.
[00:00:31] I'm Carl, a staff product developer and freelance community leader here in React Plex, where I run community programs like these events and build tools to help keep the community operating.
[00:00:41] 2-acemarke: Hi, I'm Mark. I maintain Redux. I work at Replay.io io and I apparently spend too much time debating the React team's documentation and communication.
[00:00:51] 1-vcarl: Endlessly!
[00:00:52] job market
[00:00:52] 1-vcarl: Start off with a little bit of job market news. I don't know, maybe we should stop doing these. 'cause I feel like it's not really in crisis anymore and it's not really making any dramatic shifts and I feel like I just keep giving about the same update every month. But yeah, data from Indeed trended up for the first time in a while.
[00:01:12] True up.io, which also. Attempts to answer about the same question in terms of like, are people hiring in tech shows a slightly more positive trend. So I think that might be like giant people are using Indeed and they are not hiring as aggressively in tech for tech roles and everyone else is using a random smattering of hiring tools and they are hiring. So I wonder if that's like a big tech versus little tech dichotomy. I don't know. That's not based off too much concrete in summation at all.
[00:01:43] The layoff charts for June are the best that they've been in a year and a half. Fewest number of people laid off by a decent margin and fewest companies running layoffs again by a pretty decent margin, about half for each. Lowest five 50%. So that's good. That's nice. I'm not sure if anecdotally feels that much different, but yeah. I don't know if you disagree, lemme know.
[00:02:08] We're gonna change up order a little bit. Previously we've done on job market, the conferences and the releases. I'm gonna throw conferences back at the end because I could tell in the data that people were skipping through it. So we're gonna move it.
[00:02:19] New Releases
[00:02:19] 1-vcarl: Yeah. New releases.
[00:02:21] ShadCN
[00:02:21] 1-vcarl: Shadcn pushed out an updated calendar components. In the release notes, they included like a, a code mod to move imports from at rad cy slash whatever to just rad, cy, like top level like barrel import kind of thing. I don't know what that's about. I didn't really see any new releases from RadixUI that mentioned that.
[00:02:40] So like I don't really know why that shift is happening, but like, okay, cool. That seems fine.
[00:02:44] 2-acemarke: A couple other things about RadixUI UI later on in the discussion.
[00:02:47] 1-vcarl: Yeah. Oh yeah. We've got some main content chatter about them. Just like some Twitter threads, debating, usefulness and whatever. Yeah, more of them later.
[00:02:55] rechart
[00:02:55] 1-vcarl: Recharts has a major release for the first time in a long time. Their last major release was January 4th, 2023. So two and a half years. That's a while. Recharts is not a library that I'm often happy to use, but it is a library that I often use because it just makes charts pretty easy. Not always as powerfully and flexibility as I want, but, it's good enough. It's pretty great.
[00:03:16] The big thing that caught my eye in these release notes was they're claiming it's now accessible by default, so you can tap into it in these arrow keys to navigate it. So that's nice. Accessible charts are hard.
[00:03:27] Most people don't do them, so getting it in the default is lovely. That's, that should help a lot more charts be access, and then Mark feel like you'll have more to say on that.
[00:03:37] vite 7
[00:03:37] 2-acemarke: Maybe so, so Vite 7 just came out. I've actually been having a little bit of trouble just trying to keep track of some, some of the releases, it feels like they've, they've really sped up some of the development.
[00:03:49] They've bumped their, their node version support. Part of that is because they want to make use of the relatively recent node support for requiring ESM packages. In other words, importing an ESM module from a CGS module. Which was always the, the sticking point for a lot of the ESM common JS compatibility.
[00:04:10] So they're actually distributing e and Vite 7 as ESM only, which. It feels like a fairly big step in the progress of, you know, the ESM ecosystem. They're also changing the default browser target to use the baseline, widely available preset in terms of browser features. They also now have some better support for the environment.
[00:04:35] API, I'm still a little hazy on what exactly that does. My understanding is it, it allows you to ultimately generate bundles for different target environments, I believe is the best way to put it. So Vite 7 feels like it's a fairly big release.
[00:04:51] 1-vcarl: We had talked about the environment a while ago. I also don't really understand it too well, but definitely like deep in the weeds for library authors or, I don't know, framework authors. I've heard some positive things, but yeah, it seems esoteric.
[00:05:06] biome
[00:05:06] 2-acemarke: Meanwhile, we also have a slew of new formatting and lint tool leases, all seemingly with an emphasis on making things go a whole lot faster. First off Biome, which is, you know, formerly known as Rome back in the day, just released a version two, which is a fairly big deal, partly because they're, they now actually have some type aware linting rules.
[00:05:31] Part of the issue here is that I. Up until now, the only option for doing types based linting was to use the TypeScript ES lint package, and that involves using the TypeScript compiler actually compiling things. And so it's kind of slow, and I don't know exactly how they've managed to implement this, but Biome now has some form of lightweight type analysis that does not appear to rely on the TypeScript compiler.
[00:05:58] And so they've used that. To implement things like the no Floating Promises Rule. Now, it does not appear to be anywhere near as comprehensive as what TypeScript ES lent supports, but it is an interesting step in that direction.
[00:06:11] Void Zero
[00:06:11] 2-acemarke: Meanwhile, Void Zero, which is the VC backed company behind now Vite and other related build tooling development has released Oxlint 1.0.
[00:06:24] So we have another lint tool that is a competitor to ES lint. They're claiming they have 50 to 100 x speedups and built in support for over 500 ES lint rules. And they say it's being used in a number of major companies. So if Linting is a particularly slow portion of your build pipeline. You may wanna check that out.
[00:06:45] Prettier
[00:06:45] 2-acemarke: And meanwhile, prettier 3.6 is out and they've been working on an internal rewrite of their existing CLI to try to speed it up as well. It's not a, it's not a rewrite and rust, it's just finding more efficient ways to do the same work in JavaScript. So the general theme here is people want to do linting faster.
[00:07:07] jest
[00:07:07] 1-vcarl: Yeah, we've got a new release, new major release from Jest as well. I think we had teased this the other day because they had a beta out. But yeah, first major release in three years. Again, faster perf, faster module resolution with some better ESM support. I know that generally like crawling your modules is one of the slowest is like, you know, broadly one of the slower parts of all of these bundling linting testing, whatever tools.
[00:07:34] I wish I knew a little bit more details about the internals of like how just versus Vitest do it differently. 'cause my sense is that J is like heavier weight. It like does more, is more, I don't know, doing more on your disk and like crawling the condenses and all of those kinds of things. Yeah. So like one more place where there's a focus on performance in our build environment.
[00:07:56] 2-acemarke: Faster build tools, always a good thing.
[00:07:57] rn 0.80
[00:07:57] 2-acemarke: Those who in the audience may have noticed that MO is not here this week. He had a prior commitment and wasn't able to make it. So I will have to do a poor job of filling in and describing some of the React native changes. React Native 0.80 is out and it looks like the two biggest things out of this are they have frozen support for the legacy architecture.
[00:08:18] I believe one of the recent releases made the new architecture default. So they are, they're seizing work on the legacy architecture, and this also brings support for React 19.1 as well. Now along with that, I believe the current version of the Expo SDK, version 53, does not have support for this directly yet.
[00:08:41] If you want to use React Native 80 with Expo, they do have a canary version of the SDK that you can try out at the moment. But full support, I believe is. Or is planned that Expo SDK 54 coming out later this year would have support for React Native 0.81. So good luck trying to juggle those.
[00:09:03] 1-vcarl: Yeah, I know Expo has visibly been like focusing on release cadence.
[00:09:07] I feel like for the last year or so, it seems like they've just been releasing something, being constant. And I know that Mo has talked previously about React Native working to have a more frequent release cadence, which is also has been very apparent. Kudos to Expo for like still being able to address this. Even if it's only in a pre-lease version, we can still test it out.
[00:09:28] And also just like, it seems like it speaks well to the cadence that they're able to hit that they are, Expo is just saying like, yeah, we'll catch the next one because that's how fast it's gonna come out. I do wish Mo was here 'cause I feel like I see references here that make me curious to have an expert explain a little more.
[00:09:45] They have a good post referenced in these release notes, moving towards a stable JavaScript API. I would love to hear Mo talk about how they are getting rid of JavaScript deep imports, so that, you know, basically just like saying, here's the public API stop importing things from deep within the project, which makes sense that if you let people import whatever the heck they want from inside of your package, then yeah, you just don't have a public API and you have to support literally everything. Everything is a break and change. Seems really cool. We'll have to have Mo catch us up next month.
[00:10:15] webkit 26 beta
[00:10:15] 1-vcarl: Yeah, this is a big one that is, I wish I had slightly more context for, but WebKit Safari version 26 is in beta. They're jumping from version 18, I believe it was all the way up to 26. So that all of the different, you know, iOS, whatever technology things can all be in sync.
[00:10:33] This was announced of a WW BC 25 keynote. Yeah, so like Mac, os, iOS, iPad os, vision os and Watch OS are all now version 26. And so is Safari because the browser is also an operating system. Vision's a pretty large update and it has like all sorts of things from like cutting edge. Now you can use a model.
[00:10:54] HTML tag, if you're Envision OS to render a 3D model all the way. So like that's very cutting edge, like future looking high tech, whatever. All the way back to you can also use SBGs as your favicon. A feature that like many other B browsers have had for a decade. So they're like both pushing the envelope and playing catch up.
[00:11:14] Yeah. Safari has the di very different release cadence from other browsers. It's much closer to like the old style release. Cadence as opposed to how Chrome and Firefox and Edge are all like Evergreen, constantly updating. So I guess it makes sense that we're gonna have such a huge, massive dump of features, but like definitely check it out because they've got all sorts of stuff.
[00:11:34] HDR images, web GPU, lots of CSS changes, lots of, you know, new standardized APIs, standardized job J JavaScript, APIs, all sorts of stuff. Finally, Apollo client just shipped a release candidate for version four. The release notes for this version don't have like a consolidated list of everything that's changed, but if you scroll back some, and you look at some of the lists of the prior alphas, it's clear that the, the Apollo team has been very, very busy and I know that.
[00:12:05] In some discussions with Lens, who is my fellow Redux maintainer, but also works on Apollo client as his day job. They've been doing a lot of work to try to improve some of, and some of the packaging setup that had been, that had stuck around for years. One interesting side point out of this is that there's a good chance that Apollo client for might actually ship pre-compiled with the React compiler to try to optimize some of the internal hooks and components in the library.
[00:12:34] There was a really interesting discussion thread on Blue Sky between Lens from Apollo and Josepha from the React team where they were discussing like, should libraries go ahead and ship like React compiler pre-compiled bundles already? Does it make sense to wait until some of the compiler runtime pieces are more stable, so clear, like.
[00:12:58] This is very new and new and unusual territory for all of us library maintainers, and so it's interesting to see Lynn's trying to figure out some of these things that for the rest of us, yeah. That question of whether libraries should be pre-compiled with the React compiler definitely seems like a big open one in the ecosystem.
[00:13:18] Cool. Alright. We are sponsored by Infinite Red. We are an expert React native consultancy that's been around since 2015. I. They're our only sponsor right now, in part because very few companies do as much as they do for the ecosystem. Just they, I don't know of anyone else who's done it quite so much for quite so long.
[00:13:34] I've been seeing the name Internet Red around for as long as I've been in React and around React. React Native, which goes back all the way back to like 20 14, 20 15, they host the largest React Native podcast. They organized the largest React native conference in the us. They only do React native and have built over 75 apps for companies from startups to the biggest in the world, other than being great people who've done the great things to the ecosystem.
[00:14:00] It's a team of about 30, mostly developers, mostly with more than 10 years of experience, and something like half of them have been there since the company was created. So just, you know, dev shop with Longevity. A dev shop with loyalty to its employees. What wild, they aren't just a feature factory. They will work alongside your devs and help you develop your own expertise.
[00:14:20] So if you're spinning up a new product, being React native and want some help in the ground running, definitely give them a ring intimate top red. Cool. Okay. Into our main content. Start us off with your posts and talk. Hi. Yes. This is the part where I go off on things for a while, so if you, if you've been listening to the podcast for a while, you know, following me on Blue Sky or something, I've been involved in a lot of discussions and had a lot of opinions about, I.
[00:14:44] A number of the interactions between the React team and the community, as well as a lot of the common misconceptions that have been unfortunately running around in a lot of community threads for a while now. It seems like pretty much every time you open up a discussion, for example, about Next.JS, there's complaints that the React team has is, you know, too close to next.
[00:15:06] Or that Elle invented server components just to, you know, just to make money. Or why is the React team doing all these server things? Does the React team even care about, you know, single page apps anymore? And. A lot of this stuff has been going on for a while, all the way back in January and February when some of the CRE React app deprecation stuff was going on.
[00:15:28] I kind of got fed up for a while and I was writing an extremely long blog post that I never actually published. I did a lot of research. I wrote a lot of words. It was cathartic. In reviewing it, I concluded that publishing it probably would've burned some bridges, even if the content there was accurate.
[00:15:46] But there was, there was some good historical information in there and a number of folks said that it would be worth, you know, trying to publish that. Anyway, so I had a chance to speak at React Summit in Amsterdam a couple weeks ago, and my talk there was actually directly based on some of the content in the post and.
[00:16:07] I decided it was worth trying to revisit the draft that I never published and extract the info that was relevant to the talk and hopefully make some of the points that I'd originally tried to think of, but, you know, maybe in a slightly more tact, tactful and less inflammatory kind of way. So really the the post and the talk.
[00:16:28] Are trying to push back on a lot of the myths and misconceptions and FUD that have floated around in the React community for the last few years, but also point out some places where I think the React team's communication has has kind of fallen down. So a lot of people get confused about. The relationship between the React team and the next team who actually invented server components, why they were invented.
[00:16:55] So as usual, a good portion of the talk and the post are basically a history lesson. You know, I tried, I did my best to try to recap, as I understand it, the origin of server of server components, the timeline of when they were invented, basically that the React team invented them while they were still at Meta, before Versal ever got involved.
[00:17:15] And that it was something the React team invented because they ultimately, they saw the infrastructure that Meta had for server side rendering and data fetching. That was always very specific to meta and it really couldn't be generalized. And so server components was an attempt to. Implement kinda like a generic version of what Meta had for its own infrastructure, but because Meta had that infrastructure, they really couldn't iterate and Alpha test the features the way that they had everything else.
[00:17:47] They ended up reaching out to Versal and getting Versal to build out the React team's vision of what they wanted to do. So a lot of this was me attempting to push back on the Versal invented server components to make money narrative. But then I also ended up addressing some of my points of concern where the lack of documentation about server components.
[00:18:11] Has been a point of confusion. People not understanding when do I use them, how much should I use them? Is the React telling me to use them or are they optional? As well as a lot of the, the back and forth about why are the docs pushing the concept of frameworks so hard. And so I went into some details on my understanding of the React team's rationales for actually trained to say frameworks should be the default way to use react.
[00:18:39] I put a lot of effort into it. I hope it's been informative and the feedback to the post and the talk have been pretty good. Dan Abramov actually retweeted it and basically said that, you know, he, he had a couple nitpicks about the way I described some of the timelines and bits of info, and he actually passed me some corrections on the side, which I tried to, to fill in, but he seemed to think it was generally accurate, and also he said that he'd been kind of stuck.
[00:19:06] Debating whether to write his own history post, and he might end up being able to write one. Now that I've done most of the heavy lifting on it, that at least tells me I was directionally accurate. I. Like I can't have been too far off if he wanted to correct me on. So I don't expect that my me writing a post and doing a conference talk is going to silence a lot of the confusion, but at least I've done my best to try to clarify things.
[00:19:33] So hopefully we'll see. Yeah, I think it's really valuable is to just check in every couple of years I'm like, what is. True. What did happen? What, what were the facts here? Oral history is very, very valuable. Sometimes capture some of that local knowledge. You put it in the paper. Yeah. I would be very curious to see what kind of oral history Dan OV can write though.
[00:19:52] That's, uh, you know, you and I have been paying attention for a long time, but we have not been. Operating anywhere near the same level as Dan has for as long as he has. I would say, I hope it doesn't feel unfair to make the same claim for you, but useful post. Interesting. I think it's interesting too, how I.
[00:20:10] As big as reactors, you know, the millions of people using it and relying on it and affected by it. At its core, the people in control of it is still like very countable. You know, it's not like unaccountable machine of like hundreds of people turning knobs and dials and you know, like it is at the end of the day, very much a core group of a handful of people making a lot of these decisions and doing a lot of this work.
[00:20:37] And I feel like that's maybe, I don't know, that feels relevant when we're discussing its evolution and such. There's a team page in the React Docs and that page Curie lists about 20 people. There's about 13 to 15 at Meta at the moment. There's about five people at Versal, and then there's two or three sort of independent slash emeritus people.
[00:21:00] So for example, Dan Abramov is not directly on the team at this point, actually. I'm not even sure if he's still listed on the page. I would've to double check. Sophie Alpert, who was at Meta for a number of years is still listed on the team page. I don't think she does a lot of development at this point, but still involved in discussions.
[00:21:19] So it's about 20 ish people that would be considered sort of the, the core team that's separate from, you know, whoever might be doing like React native or other pieces like that. Right. React native is its own court team, which I think is larger. Yeah, I can confirm. Dan Amont was still listed on the meet between page second, so very highly along with me giving my talk.
[00:21:43] Earlier in the afternoon. Tanner Winsley did a talk about couple different things. Some of it was, you know, pitching the various 10 stack pieces. So router query the upcoming 10 Stack start framework as well. But part of his thesis was that. Single page apps are still by far the dominant way to build React, even if there's been more of an emphasis on server side pieces in the last few years.
[00:22:10] He really likes single page apps and a lot of his goal is to build good tooling that would be used by single page apps. I don't think any of the talks from React Summit are are online yet. I think they said they would try to have 'em online within two to three weeks after the conference. I haven't seen a notification that any of 'em were up yet, but I would definitely recommend watching Tanner's talk once the video for that's available.
[00:22:38] Yeah, maybe we can, oh wait. Oh wait, I see a playlist. No, there's only five videos on it. Yeah. Maybe we'll be able to share those out next month. Yeah, they, I believe they, they're generally put up directly on get nation.org or.com, I think, rather than being listed in the YouTube channel. But we'll have to see.
[00:22:57] Okay. I do see a React Summit 2025 playlist that has a couple of videos with like children views, maybe a ways to watch. Yeah. Moving on. Remix React router, going back to last month. So we've had a lot of. Back and forth between what is Remix, what is React Router? First we had React Router, the client side, LI Library.
[00:23:21] Then we had Remix the SSR framework, and then we had Brian Forres announcement at React Conf, I think two years ago that most of the features in Remix we're going to migrate back to React router. And so React router gained things like loaders and a framework mode, and they announced that Remix was going into some kind of hibernation.
[00:23:46] What was Remix is now basically all in React router, version seven I. And so Remix had kind of stopped development at version two last month. We talked about the announcement post where they said that Remix V three is coming. It's going to be very different. It's not just like, you know, upgrade to the latest version of React Features or something like that, but instead that it would be.
[00:24:12] A new framework, one that actually is gonna use a fork of the pre-ACT alternative library, and with various emphasis on things like LLM based development and no bundling. That's the context for where things stand with Remix and react Router as a whole. So from there, Ryan for and Michael Jackson are both pr, you know, still pretty active on Twitter and they've been making a lot of comments that are either teasing things in directions that they want to go with Remix, but also, I'm not entirely gonna call them like clickbait or flame bait posts.
[00:24:55] But kind of close stating a number of opinions about React itself that frankly make me very, very, very confused about what it is. Remix V three is actually even gonna look like. An example of this would be that Michael Jackson recently tweeted that he's now very disillusioned with React Hooks. You might even remember that Ryan Florence did one of the original talks at React Con 2018 where he helped, you know, demo React hooks for the first time.
[00:25:22] And you know, granted, this is Michael's comment, not Ryan's, but I think it kind of shows their shift in mindset over the last seven years. Yeah, definitely big moves. I don't know, there's. They've been such big figures throughout my career. Like when I was learning React, I learned React rather in parallel, in like literally 2014.
[00:25:44] And it's a little bit funny to have like been there for the whole saga because I've just watched them go like back and forth and back and forth on like what should be the API do. We care about data fetch at the router level. Just like watching them explore this and like watching their opinions shift and evolve and like double back and unfold in slightly different directions.
[00:26:06] It's, I don't know, it is a bit of a surprise. I, I don't know. It is and isn't surprising to see Michael Jackson here come out against hooks. Also, I'll just say I was trying to confirm whether Michael Jackson still worked at Remix post Shopify acquisition, but I, I had a funny interaction years ago, managed to get enough of the profile in the ecosystem where Michael Jackson was following me on Twitter and we had a interaction during COVD about like lockdown stuff, where he was skeptical of lockdown.
[00:26:36] And I was like, it's keeping people safe. And he ended up unfollowing me. So I don't know, like that felt like, that felt like a moment, that was a moment for me. I dunno, big famous person in the ecosystem unfollows you on Twitter. Like it stuck in my head and I don't know, it's just like, to me that feels like that feels relevant here as like point of contrarian and like, I don't know.
[00:26:56] It's seemed since then that there was kinda like a closing off since then of him being like, Nope, I believe what I believe and I'm very confident that it is right. And like, screw all you. So I don't know. This is interesting. On the one hand, like hell yeah. Know your principles live by them and put the work in and like he's doing that.
[00:27:16] Heck yeah. It's interesting hearing him say like, I don't like hooks. They're not great. And also like I relate to that. I don't know, like I, I started like learning hooks and like rewriting a bunch of code and using them professionally for a number of years. It felt like there was a right way to solve the problem.
[00:27:35] It felt like I was, it felt less like I was writing code and like doing a thing and more like I was figuring out a puzzle somebody else had made with a right answer. And if you didn't get just the right answer, like you kind of had to start over. You know, it felt video gamey in that way of like, you make a bunch of progress and then you realize that you're at a dead end and it's like, let me start over.
[00:27:54] I think that, you know, that feels like what he's complaining about here. You know, everything about them just seems so unnecessarily complex. But then he is also like down on signals, which is what a lot of other people are very pro. I'm also skeptical having used, I don't know there, I hear there are differences from event emitters, but I'm skeptical that the differences are that significant.
[00:28:16] I keep hearing similar trade offs about circular dependencies and like event storm type of stuff. So if he's rejected like pokes and signals, which are the two top of mind ways of dealing with reactivity in React. And he's also stated the intent to use a fork of a fork of react in Remix D three. Yeah, whatever that's gonna be called.
[00:28:39] I don't know. It's interesting. Like it doesn't sound like it's react anymore. It sounds like it's, he's gonna try and explore. The same problem space that React has been exploring, but doing so while challenging some of the core assumptions. So I don't know, it's space to watch. Yeah. And, and to be clear, like I'm, I'm not sitting here and saying like, oh no, Michael Jackson hate hooks.
[00:29:00] He's a bad person. And anyone who's actually. Excuse, react, understands that hooks have trade-offs. They are not perfect. They have a different set of trade-offs than class components did. There are a lot of pain points, depths, arrays, data flow, you know, reactivity, mental models, et cetera. I am certainly very well aware that.
[00:29:21] Hooks have their own set of trade-offs and flaws. But yeah, like my point, looking at the thread and this discussion is basically what you were saying, like Remix was a react based framework in version one and version two, Remix V three is not a React based. Framework, but given that they don't seem to like hooks and they don't seem to like signals at this point, I just honestly have no idea what it is they're even trying to build or what the feature set is, what the.
[00:29:56] Usage patterns are supposed to be. I, I am just, I, I, I don't have a good mental model for what it is they're trying to do at this point, just by reading the discussion and the tweets. I believe they said that, I think there's a, a Remix jam conference coming up later this year. I think possibly in Toronto, if I remember hearing correctly.
[00:30:18] I don't have a date for that off the top of my head, but I think it's this fall, and I think I've seen them say that they will have some announcements to make. At Remix Jam, which is understandable. I don't know, like I'm curious to see what they've got, but it, it doesn't seem like we'll really have a decent understanding until they make an actual announcement and then there's good documentation to look at, and then we could critique that.
[00:30:39] Yeah. Right. So, I don't know. I'm curious. If they have my attention, for sure. It feels like they're being coy about it too. I feel like they have a lot more of this banged out than they're talking about and you know, I feel like there's a private group chat or like a secret repo somewhere that it'd be very fascinating to get access to.
[00:30:57] Another little bit about this, they have posted about the open governance. Technical committee, steering committee that reactor adder will now have, I hold some skepticism, some level of skepticism just based on like the contents of this governance stock that you know, this governance announcement blog post, like notably the only people on the steering committee at inception, our existing Remix and react to router contributors, the announcement and the governance model.
[00:31:28] Both focus very heavily on technical goals while discussing governance and how this is going to be open and like, you know, participant participatory from the ecosystem and whatever. They set up a lot of fences pretty early and strongly of this is what we care about. This is the direction we're gonna be going.
[00:31:46] So like saying, not including outside people in the initial steering committee. And very aggressively setting direction while discussing open governance to me says this is visible governance, but I don't know if it's gonna be open to that, open to outside participators. Yeah. This feels reminiscent of like some of the working groups in the React ecosystem where they, we were just, you know, a little bit, they had blinders on.
[00:32:11] They were gonna do their thing and they did their thing and that's great, but it's, it's not that open, it's not really that participatory. So this is, this is one that I've only partly read, but it feels like there's some amount of relevance. So the RAD X UI is a headless UI library that is pretty popular, especially because it's been used by the Shad CN component library.
[00:32:36] But RAD X UI has been borderline unmaintained for quite a while. I believe the library itself got bought out a while back by a company called Work Os. And there's now basically a, a halftime maintainer of the library. And I've actually spoken to that maintainer before at a conference and he is like, yeah, I'm, I'm pretty burned out.
[00:32:59] And I would almost rather like not even do anything with redix at this point. I. So there was some chatter in the last few weeks about whether people really ought to even be using it at this point. And apparently one of the original co-creators of Readex is now working on a competing package called Base ui.
[00:33:20] And so basically saying that, look, Readex is unmaintained. Try using base ui, try using Aria kit. So I, I don't necessarily have a lot more feedback and thought and no, I have not seen Theo's video on it, so I have no opinions there. I will say that just because something is not getting active maintenance does not mean that the code is dead or suddenly more broken.
[00:33:46] But I can definitely understand people's reluctance to use something that isn't getting, you know, like still getting active fixes. Yeah, I do have some opinions. I think that to some extent, like I don't really expect that much active maintenance from a like mature and wide used component library because there's not really that much changing in how you would develop a component library.
[00:34:12] Like there has been so many component libraries. All like, you know, building on each other and exploring different directions and like pulling different types of abstractions and different types of like interactivity or whatever, different developer experiences. Going back for like long enough that it's pretty well trot ground at this point, and for a very long time it reacts life.
[00:34:37] The patterns and the abstractions and the ecosystem they existed in were churning very heavily, and so it, it was not that surprising to see new component libraries coming out like every, you know, six months because there were meaningful differences. Every six months, you know, like, you know, is, is this written with higher order components or render props or hooks or, right.
[00:35:00] Oh, you know, like when I first started, I started writing things with mix-ins, and then I was like, wow, mix-ins are, and then someone was like, oh, here's a higher order component. I was like, oh, that's cool. Let me try that. And then someone was like, here's a render prop. Here's a hook. You know? Now node and MPM support different modes of like consuming libraries.
[00:35:21] And so now as a component library maintainer, I need to go refactor everything to support tree shaking or to be ESM only. So like there's just been so many big seismic shifts that like, yeah, we got used to that, but it's not really, that hasn't really been strongly the case for a minute now, like I would say, I.
[00:35:44] 2022. I feel like it was when we had a, started getting, you know, as an ecosystem, the wisdom of how to use hooks had really settled down pretty well. Like we, we explored a lot of patterns and figured out things that did or did not work. And Hooks came out in 2018. 2022 is like four years of like playing with them.
[00:36:06] And then that was three years ago. So like we've been, we've had a stable set of primitive tools within React. For doing abstractions for seven years now, which is absolutely, you know, that's longer than pre hooks. We only have three years before hooks existed. Four years, maybe five. No, it was 2013 when it came out.
[00:36:25] So like that's more time with hooks than we had without hooks. So I don't know, like. I see this thread started with hot tape using Chad CN slash radix. The liability at this point, and maybe this is also an echo of a point that I try to drive home periodically on this podcast of like there are many different audiences using React and if you're an indie hacker than your constraints are extremely different from someone four years into maintaining a legacy application that's making tens of millions dollars for its parent company.
[00:36:56] So like. This hot take sounds to me like someone doing small team build it and set it down projects, not somebody maintaining a legacy application. So like, sure, if you are trying to use the latest, greatest, sharpest leading edge tools, I. Is maybe that, not that name water, but I don't think it's getting rusty that quickly.
[00:37:16] So like if you are not building a new thing every three months, I think it's probably fine. I dunno. Seems okay. And like, and you know, oh there was a really great, oh shoot, did I lose the link? There's a really great, I. Response that I saw from the maintainer of chat already, just baed it in. Lovely. Yes, thank you.
[00:37:33] You just did that. Yeah. And he says, he says a lot of things that resonate with me that I think I have hit on here. Like here's what I'd suggest already. There's a quote here, here's what I'd suggest already using redix and prod. Stick with it. Starting a new project. Consider ics React Aria or Aria Kid.
[00:37:49] All great choices. So like, yeah, that's, I would agree with all of that. And he closes this, what I'd suggest section with Shae is built for this code. Your own code can approve, rewrite or replace and like, yeah, that's the whole like reason for Shae and being built in the way it was, is that like it's not a library if you're unhappy with it, it's your code, it's hidden, your repo, you committed it.
[00:38:11] So change it, commit something else. So I don't know. It seems cool. This seems, not that I have a lot of opinions on this, but at the end of the day, my opinion is like chill out, care less. Do the thing that's right for you. I guess in a very broad level, the JS ecosystem is entirely too prone to saying Tool X is dead because tool Y exists.
[00:38:34] Yeah, I could rant about that. The human trend towards X is dead long lives. The new X on with Y? Yeah. Okay. I think we've beaten that to death now. Okay. Into our lightning round. I don't have too much to say on this, but I like it. This is a blog post. Of somebody writing React components. Enclosure, this is part three of his series, and that just seems to be, I don't know.
[00:39:01] I love seeing people play around with server components more and playing around in different languages, in different room times. Is extra interesting, so that's cool. Just a great like use case, write up. There's been a subset of the closure script, whatever community that's used, react in their own way for many years now.
[00:39:21] So seeing, seeing someone attempt to bring server components over in that direction's kind of cool. Dan Abramov has continued to crank out blog posts and he put out a couple more since we did our, our last podcast. He wrote one on progressive JSON, where he talks about how server components will progressively send over pieces of JSON and insert placeholders via suspense.
[00:39:44] And then he did another post on how imports work with server components. And the majority of this post actually doesn't have anything to do with. Server components per se. It's really describing how the JavaScript module ecosystem works and then brings in some bits about how server components allow you to connect the dots between the client side and the server side, as well as enforce that certain code only exists on one side or the other.
[00:40:13] We've got new ES 2025 out, which seems pretty good. Man, I, it, it took me a little bit to catch up on. Order of operations and what came out when. So this is everything. This contains everything that went to stage four, more or less over the past year. The most recent stage four is going out in 2026. So this what's contained here is Sync Iterator Helpers Promise.
[00:40:40] Try some new set methods. Methods on the set primitive. That is JSON modules for imports. Import attributes and then a couple of like Redex updates for escape and modifiers and main capture capture groups. Sync iterators. Sync Iterator helpers are definitely the most like, interesting thing on this list to me.
[00:41:00] Just like they're the, the number of times that I've taken a set or, you know, some iterable and then spread it out into an array so that it can map over. It is like constantly. I, every time I use an Iterable, I'm doing stuff like that because I like using e. Map and four each more than I like doing four ofs, so that's cool.
[00:41:19] I'm excited to see that. Just being able to natively map over Iterable is lovely and I love it. One thing that's probably worth noting is that apparently the iterator support is, might be a little better for perf in some cases because it doesn't have to create a separate array every time you do like a filter or a map, right?
[00:41:37] That's the main thing I think about every time I do that. Oh man, I'm just iterating a new array for no reason. New RA for no reason and kind of related promise that try is sort of a similar type of performance optimization, you know, performance micro optimization. This, the last time I was reading about it, the advantage I saw is that it lets you, it lets you ignore whether something is or is not a promise without skipping a tick.
[00:42:03] If it is a promise, you know, and you do a dot, then like, okay, it's gonna consume a tick. But if it's not a promise and you wanna just run something afterwards. All of the like poly fills for something like promise try that would let you exit. Whether or not it returns, a promise would consume a tick. So now that, that's the advantage here is if it, if you're looking for that, it just is a little bit faster.
[00:42:27] It's a little bit less talking. Then the, the set methods are a very nice, convenient thing. Sets now have built-in methods for intersection union difference, and a couple other things, which is something that really should have been in there from the beginning. Yeah. Definitely, there's so many more details on Axel Meyer's blog, so like definitely the dive into that and yeah, little teaser of ES 2026 is they have already sh shipped.
[00:42:57] Well, they've already landed. Error is error, like an identity function for errors. So you can actually get like type safety in catch blocks. More easily. That is stage four, but it did not make the cutoff for S 2025, so that'll be out in 2027. There was a post on the Shopify engineering blog about the future of React Native Graphics Web GPU, SKIA and beyond.
[00:43:21] The land of low level 2D graphics toolkits is complex with. Wrappers and abstractions and cross compat and all kinds of other layers of complexity. And so the post goes into into details on the existing React Native ski, a package for 2D graphics, how they've been able to add web GPU support to React native so they can do things like running three JS inside and some of the other upcoming improvements to React Native Skia as well.
[00:43:51] Yeah, I, I know I've heard Mo talk about Yeah. A couple of times. See it getting, I don't know, broader. It seems cool. It's neat to see it still going, still chugging along. Cool. This is a personal plug. I wrote a blog post for the node js blog. I. It's June, it's Pride month. I'm proud. I have not always, I have accepted within the last couple of years that I am queer and began understanding what the heck that actually means.
[00:44:18] I was asked to write a blog post for Pride and I pulled together one discussing open source and it's parallels with queer identity and how you know, we all take the labels that exist. Learn from them, incorporate them into our understanding of ourselves and use those as a springboard to find new things.
[00:44:38] So, I don't know. I'm proud of it. I like it. It's a good post if you're interested. Check it out. Yeah, I, I've been checking the Twitter replies on the announcement and yeah. Yep. Those people still exist. They don't like it. So anyway, it's all I'll say on that. Closing with conferences, we have a quite a number of conferences coming up, like basically next week, July 3rd through fifth.
[00:45:00] Is React Nexus in Bangalore, India. There is Big Sky devcon out in Bozeman, Montana. Which seems cool. I don't know. I I appreciate that. It's called Big Sky. I know that there's a, I think there's a big Sky National Park and I, I used to do astrophotography, so big skies are like near and dear to my heart. So this one just looks sweet.
[00:45:22] I don't know. I don't have any, there's not no other reason beyond that for me to have an affinity foot, but I like it. So if you can get up to Bozeman, Montana. There's Kansas City Developer Conference, August 13th through 14th of Kansas City, Kansas. KCBC. 2025, which made me assume from the label that Kent c Dodds might be affiliated, but he is not.
[00:45:42] It is not. Kent c Dodds conference. It's Kansas City Developer Conference. There is React Universe, September 2nd through fourth in Poland. Then September 16th and 17th, Wacon also in Poland back to back pretty much after Wacon. There's Cascadia Js up in Seattle, Washington, September 18th and 19th. So I think Squiggle conf is happening in Boston the exact same time.
[00:46:07] I. Yeah, you've got SW Con, September 18th, 19th, Boston, Massachusetts. They are great. I plan to be there. This is slightly further afield for further down the line, but React Cons will be back in LA in Las Vegas. I. October 7th and eighth. So yeah, I was there last year and it was a pretty great time.
[00:46:26] Definitely check it out. Although tickets are expensive and lottery system, so good luck. That's everything we got for you this month. Thank you so much for joining us. We will be back next month. I hesitate to promise on Wednesday because we have not done that in a minute, but maybe next month on Wednesday here in the live stage, or we'll be back in your podcast feed just as soon as we can after that.
[00:46:46] Scheduling is hard. Yo scheduling is so hard. We gather sources from this week in React Bites. Do Dev React status, Next.JS Weekly the React JS subreddit. And here in react to plugs from the Tech News Andres channel. If you have any news that you wanna share with us. Tech Reads and News is a great place to do so, or you can send it to us at hello@reactiveflex.com.
[00:47:09] If this is a show that you get value from and would like to support, one of the best ways you can do so is give it a review on whatever platform you listen to, listen to it on, and just share it with friends, share it with coworkers. Go to a meetup and say, Hey, there's this great podcast. I like. Yeah, thanks so much for listening.
[00:47:25] We'll see you next month. Take care.