This Week In React #107: Plasmo, Panapasi, Fastify-DX, Remix, Solid, useInsertionEffect, JSI, Vite, Angular, Safari...

Sebastien Lorber - Jun 7 '22 - - Dev Community

Hi everyone!

Remix, TanStack, Chakra, Mitosis, Panapasi, Fastify-DX... What do they have in common?

They are becoming framework-agnostic! It's clearly a growing trend!

I arrived in Krakow for the App.js conf. Hope you bring back some great React-Native content for next week 😄

🙏 Support the newsletter:

If you like this newsletter, subscribe in priority there:


React

Plasmo - Like Next.js for browser extensions!

A new framework focused on the creation of browser extensions, based on React and TypeScript. Open-source, free core, which offers paid CI/CD cloud service.

Panapasi - The Universal UI Library

We see more and more UI libs that want to offer a native cross-framework support (see Chakra, TanStack libs...). Panapasi is to my knowledge the first project of its kind based on Mitosis, compiling a JSX Lite dialect to the target frameworks.

Fastify DX for React

New fullstack framework under development, based on Fastify and Vite. Agnostic: can be adapted to several frameworks (React, Vue, Solid...). The React integration aims to be a lightweight alternative to Next.js and Remix, based on React-Router and Valtio.

Converting a React Component to SolidJS

Converting a pagination component from React to Solid. A lot of JSX code can be taken as is, but the hooks will have to be adapted a little. Solid represents a real innovation: the code looks a lot like React in the end (without dependency array 😏) but the execution model is reactive.

Redux Toolkit's new listener middleware vs. Redux-Saga

Nice side by side comparison of the new RTK Listener system vs Redux Saga. Compares the implementation of many use-cases. RTK Listener seems like a good lightweight alternative to Redux-Saga, with a relatively low learning curve. A good resource to choose one or the other, or to plan a migration.

React 18 useEffect Double Call for APIs: Emergency Fix

Jack gives 6 possible solutions to avoid the double query problem with React 18's StrictMode. Using a lib like React-Query or RTK-Query (hmmm, TanStack Query 😏) seems the easiest.

Extras:

💸 Sponsors

💡 How to sponsor this newsletter

Axiom - Zero-Config Observability for Vercel

Axiom enables you to monitor the health and performance of your Vercel deployments by ingesting all your request, function, and web vitals data.

Use Axiom's pre-built dashboard for an overview across all your Vercel logs and vitals, drill down to specific projects and deployments, and get insight on how functions are performing with a single click. 

PSI use it myself to monitor the newsletter signups 😉

Meteor's Biggest Online Event: Looking For Speakers! ☄️

The Meteor Impact conference is coming back this year and will be taking place on October 13th and 14th!

If you're new to Meteor, it is is an open-source framework for seamlessly building and deploying Web, Mobile, and Desktop applications in Javascript.

We anticipate this year's event to be the biggest and the best Meteor Impact conference ever!

We are now looking for speakers who are interested in participating in the conference.

You can submit your talk proposal by clicking here. We hope to see you in October!

React-Native

React Native JSI/TurboModules pitfalls

Oscar has significant JSI exprience: he is the author of React-Native packages, and a Youtube playlist dedicated to JSI. He gives us interesting feedback on the use of various languages ​​for the native side, or on the difficulty to benchmark appropriately JSI compared to the old bridge architecture.

Extras:

Other

WebContainers are now supported in Firefox

This StackBlitz's innovation allows you to run Node.js code directly in the browser, including React frameworks like Next.js, Remix, Docusaurus... It has just taken a big leap forward with this new Firefox support (in addition to Chrome).

Extras:

CleanShot 2022-06-08 at 00 06 57@2x

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .