This Week In React #108: App.js, Fresh, Reassure, Million, Hydrogen, Gatsby, Treasured, WebComponents, RNW, Zeego, TC39...
Tags: react, reactnative, typescript, javascript
Published: 2022-06-15 07:59:48

---
series: This Week In React
---
Hi everyone!

This week we celebrate the [official death of IE11](https://twitter.com/sebastienlorber/status/1536371104020824076?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)! 😄

I just came back from the App.js conf in Krakow: a very nice experience that I recommend to any React-Native dev 👌. Check my [summary on Twitter](https://twitter.com/sebastienlorber/status/1536636851230060544?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)!

Lots of interesting releases this week. And with React Summit coming up, it should continue 🤯

🙏 **Support the newsletter:**

-   😘 **Recommend it to your friends**: it really helps!
-   💸 [**Sponsor This Week In React**](https://gist.github.com/slorber/cb732fb5d0a002c4d73236a9baeba7bb?utm_campaign=thisweekinreact&utm_medium=email&utm_source=Revue%20newsletter)
-   😍 [**Write testimonials on Twitter**](https://twitter.com/sebastienlorber/timelines/1448942785814466561?utm_campaign=thisweekinreact&utm_medium=email&utm_source=Revue%20newsletter)
-   🧵 [**Retweet the latest Twitter thread**](https://slo.im/thread?utm_campaign=thisweekinreact&utm_medium=email&utm_source=Revue%20newsletter)
-   📨 Reply to this [**email**](mailto:lorber.sebastien@gmail.com?utm_campaign=thisweekinreact&utm_medium=email&utm_source=Revue%20newsletter): feedback is welcome
-   👥 Follow on [**LinkedIn**](https://www.linkedin.com/company/this-week-in-react/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

**If you like this newsletter, subscribe in priority there**:

-   🇬🇧 [ThisWeekInReact.com](https://thisweekinreact.com/dev-post)
-   🇫🇷 [ReactHebdo.fr](https://reacthebdo.fr/)


[![](https://user-images.githubusercontent.com/749374/153181021-8fdb0ece-270a-4cf2-980b-4557d04316ad.png)](https://thisweekinreact.com/dev-post)

---

## React

[**Fresh - The next-gen web framework.**](https://fresh.deno.dev/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

Luca Casonato (Deno core team) unveils a new meta-framework for Deno based on Preact. Shares some common points with Next.js and Remix (FS routing, progressive enhancement). Islands architecture for hydration. No build step: compile on the fly. To be tested!

[**Reassure**](https://www.callstack.com/open-source/reassure?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

A new performance testing tool for React should be open-sourced next week. Measures and counts renders of a given scenario, snapshot them, and generates a report on changes (possible to publish in a PR). Announced at App.js, the tool only supports React-Native for now: web support will come later.

[**Million.js**](https://millionjs.org/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

Million is a Virtual DOM solution supported by Vercel, which proposes to use a compiler to improve performance and reduce size (inspired by Svelte). The [Million + React](https://github.com/aidenybai/million-react?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter) integration package has just been released. All this seems promising, but not yet ready for production.

[**Gatsby Launch Week**](https://www.gatsbyjs.com/blog/launch-week-the-latest-updates-to-gatsby-cloud-and-the-gatsby-framework/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

A digest of the latest Gatsby news, with detailed blog posts on each topic. Some of those topics:

-   Script Component
-   GraphQL TypeGeneration
-   Image CDN GA
-   Incremental Deploys for All Builds

[**Shopify - Best-in-Class DX with Vite and Hydrogen**](https://shopify.engineering/developer-experience-with-hydrogen-and-vite?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

Interesting feedback on the usage of Vite in the Shopify Hydrogen meta-framework. There are advantages in terms of DX via the use of ES modules in dev, but also for the SSR and the integration of React Server Components thanks to its plugin system.

**Extras:**

-   📜 [How to useMemo and useCallback: you can remove most of them](https://www.developerway.com/posts/how-to-use-memo-use-callback?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): interesting reflection on the use of memoization hooks
-   📜 [Stress Testing Concurrent Features in React 18: A Case Study of startTransition & 3D Rendering](https://dawchihliou.github.io/articles/stress-testing-concurrent-features-in-react-18?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): nice demo that shows the advantages of Concurrent React to keep UI responsive. Based on React-Three-Fiber.
-   📜 [Unit Testing React without Jest](https://whistlr.info/2022/test-react-builtin/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): shows how to replace Jest with the Node.js 18 built-in test runner. It's a good start, but doesn't cover everything: mocking, snapshots...
-   📜 [Building Interoperable Web Components That Even Work With React](https://css-tricks.com/building-interoperable-web-components-react/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): the official support of Web Components is still expected in React. Possible solution: create a wrapper.
-   📜 [Giving Jest-Preview a Spin](https://dev.to/mbarzeev/giving-jest-preview-a-spin-24b9?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): feedback on this new practical tool
-   📜 [First look at Joy UI](https://mui.com/blog/first-look-at-joy/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): new design-system, by MUI
-   📜 [Storybook Component Encyclopedia](https://storybook.js.org/blog/component-encyclopedia/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   📜 [Remix Conf 2022: The Overview](https://crystallize.com/blog/remix-conf-2022?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   📖 [useEffect doc - final draft](https://twitter.com/dan_abramov/status/1534594885998854144?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   📦 [styleQ](https://github.com/necolas/styleq?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): to concatenate classNames in an optimal way (with a memoization system), for CSS compilers. Published by Nicolas Gallagher, this lib is now used in React-Native-Web 0.18.
-   📦 [Treasured](https://treasured.dev/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): a SDK to [convert Unity 3D scenes to web through React-Three-Fiber](https://twitter.com/umariomaker/status/1535287177822752769?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   📦 [Relay 14](https://github.com/facebook/relay/releases/tag/v14.0.0?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   🐦 [Jonny Burger full-time on Remotion](https://twitter.com/JNYBGR/status/1536249510963228673?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   🐦 [The Joy Of React](https://twitter.com/JoshWComeau/status/1534215989788909569?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): Josh Comeau's upcoming React course.

---

## 💸 Sponsors

💡 [How to sponsor this newsletter](https://gist.github.com/slorber/cb732fb5d0a002c4d73236a9baeba7bb?utm_campaign=thisweekinreact&utm_medium=email&utm_source=Revue%20newsletter)

[**Axiom - Zero-Config Observability for Vercel**](https://www.axiom.co/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

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. 

**PS**: [I use it myself to monitor the newsletter signups](https://twitter.com/sebastienlorber/status/1528666563452317696?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter) 😉

[Scale Your Meteor Apps Confidently With Minimal DevOps](https://social.meteor.com/cloud-discount?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

**Meteor Cloud** is the only full-service cloud solution engineered for Meteor apps.

You'll be able to host and scale your Meteor app with ease, monitor performance, and reduce time spent on DevOps, all from one centralized dashboard.

Configure your hosting needs to your exact specifications or use intuitive out-of-the-box features designed by long-time Meteor developers.

**Save $1,000's** per month on DevOps costs with the additional comfort of knowing your app is supported by in-house Meteor experts. Sébastien's readers get a special **30% OFF discount**. Grab the offer [here](https://social.meteor.com/cloud-discount?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)!

---

## React-Native


[**App.js - Mon résumé sur Twitter**](https://twitter.com/sebastienlorber/status/1536636851230060544?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

It's hard to summarize everything exhaustively. With Expo, mobile DX continues to improve. There is a real craze for web support! New tools available for performance monitoring. Various useful links:

-   🧵[Expo Dev Tools Keynote](https://twitter.com/Baconbrix/status/1535256333397725191?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): EAS Metadata, versioned CLI, config plugins, universal Metro, lazy bundling...
-   🧵 [Sketches](https://twitter.com/flexbox_/status/1536267926327545856?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): David created sketches for each talk of the conference, giving a good overview.
-   🐦 [Expo Sweet Modules](https://twitter.com/tsapeta/status/1535318031915700225?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): A new API to facilitate the creation of native Swift/Kotlin modules will be released in Release Candidate this week.
-   🐦 [Shopify FlashList](https://twitter.com/marekfort/status/1534909538297683974?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): a powerful alternative to FlatList that will be released soon.
-   📦 [Zeego](https://github.com/nandorojo/zeego?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): cross-platform menu components, from Fernando Rojo.
-   📦 [Universal Design System](https://github.com/showtime-xyz/showtime-frontend?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter): Showtime has open-sourced its frontend and cross-platform design-system.
-   🎥 Live streams: [day 1](https://www.youtube.com/watch?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter&v=te7bwfNsRKg) - [day 2](https://www.youtube.com/watch?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter&v=Hbj33eEultw)

[**React Native for Web 0.18**](https://twitter.com/necolas/status/1535360205994635264?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

React 18 support, introduction of the new styleQ runtime, removes support for older browsers, various improvements. A step toward the ability to statically extract CSS? Nicolas Gallagher [questions the usefulness of his project](https://twitter.com/necolas/status/1535101398395695104?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter) 🤔.

**Extras:**

-   📦 [react-navigation-bottom-sheet](https://github.com/th3rdwave/react-navigation-bottom-sheet?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   📦 [react-native-volume-manager](https://github.com/hirbod/react-native-volume-manager?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   🎙️ [RNR 238 - Accessibility in React Native](https://reactnativeradio.com/episodes/rnr-238-accessibility-in-react-native-with-lizzi-lindboe?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

---

## Other

[**Updates from the 90th TC39 meeting**](https://dev.to/hemanth/updates-from-the-90th-tc39-meeting-1789?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

Various progress of proposals. I'm especially happy for "Symbols as WeakMap keys" in stage-3. It's an important step to be able to use [Records & Tuples with React](https://sebastienlorber.com/records-and-tuples-for-react?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter) someday 🤗.

**Extras:**

-   [Fastify v4 GA](https://medium.com/@fastifyjs/fastify-v4-ga-59f2103b5f0e?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [Lerna 5.1](https://twitter.com/victorsavkin/status/1534617516248637441?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [Prettier 2.7: new --cache CLI option and TypeScript 4.7 syntax!](https://prettier.io/blog/2022/06/14/2.7.0.html?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [Rome 0.6](https://twitter.com/rometools/status/1534204750597603334?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [Tailwind CSS 3.1](https://tailwindcss.com/blog/tailwindcss-v3-1?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [Parcel CSS 1.10](https://twitter.com/devongovett/status/1535743919438241792?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [The End of Localhost](https://dx.tips/the-end-of-localhost?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [Patterns for Building JavaScript Websites in 2022](https://dev.to/this-is-learning/patterns-for-building-javascript-websites-in-2022-5a93?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [New in Chrome 102](https://developer.chrome.com/blog/new-in-chrome-102/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)
-   [WebKit - Meet Web Push](https://webkit.org/blog/12945/meet-web-push/?utm_campaign=This%20Week%20In%20React&utm_medium=email&utm_source=Revue%20newsletter)

<img width="593" alt="CleanShot 2022-06-15 at 09 57 58@2x" src="https://user-images.githubusercontent.com/749374/173774264-46a7a53c-4300-4be7-ae41-fdfaae386a47.png">