WhoBuilt

React Conf 2024 Highlights: Speakers Interviews

Jun 13, 2024· 45 min· 402 views·Watch on YouTube

Speakers

At React Conf 2024 in Henderson, Nevada, Callstack host Lucas interviews Andrew Clark, a React team member at Vercel, React Compiler team member M., Kent C. Dodds, Josh from Vercel, and Evan Bacon from Expo about React 19, the compiler, Server Components, and the conference.

React 19 refs and Actions

Andrew Clark explains that React 19 lets function components receive `ref` as a prop, removing the need for `forwardRef`; class components still receive refs as instances, outside their props. He describes Actions as a general pattern that can use server functions, while Server Actions also support progressive enhancement through HTML forms that work before hydration.

React Compiler compatibility and behavior

Clark says official compiler support starts with React 19 because its runtime is built into that release, though earlier versions can work with a polyfill. M. says teams on React 18 can use the published React Compiler Runtime, and that existing `useCallback` calls can be removed while `useMemo` bodies are inlined. The compiler can skip code that breaks React’s rules, and teams can configure which files or components it processes.

Server Components and learning React

Kent C. Dodds describes React Server Components as a way to combine server-rendered static parts with interactive client components in specific places across an app. He says not every app needs them, but recommends using a React framework for production needs such as performance and usability. He highlights Evan Bacon’s demo as a practical example of server-driven UI.

Streaming and document metadata

Josh from Vercel discusses React 19 features for coordinating stylesheets, scripts, and metadata in HTML. Streaming lets users see parts of an app sooner, but can put document data in places that browser-based rendering tolerates and some HTML-processing tools do not. React can keep metadata in the head by placing it outside a Suspense boundary, with the trade-off of waiting longer for the full document.

Expo’s universal server-driven UI

Evan Bacon describes an Expo Router prototype that brings React Server Components and server-driven UI to web and native platforms. Its planned architecture builds on file-based routing, API routes, server rendering, static generation, and data fetching, with platform and native-client versions accounted for in endpoints. Bacon says the prototype helped him add features such as authentication and data access quickly, then focus on native styling and animations.

Takeaways

  • When adopting React Compiler, check React version support and verify that the code follows React’s rules.
  • Use Actions for a consistent pattern across client and server work; server functions add form-based progressive enhancement.
  • Keep metadata outside Suspense when HTML tools require it in the document head, while accounting for slower completion.
  • Consider Server Components for apps that benefit from mixing server-rendered content with targeted client interactivity.
  • For universal apps, shared routing and data-loading patterns can reduce duplicated work across web and native.

Mentioned in this talk

Search inside this talk

What was claimed 6

  • feature
    React: Ref can be passed as a prop to function components; class component ref behavior is unchanged
    “making `ref` a prop and getting rid of the need to use `forwardRef`”
    YouTube
    Unverified1 source· Talk
  • feature
    React Compiler: Official support starts with React 19; React 18 use is possible with a runtime polyfill
    “Official support will start with React 19”
    YouTube
    Unverified1 source· Talk
  • feature
    Remix: Its use of the form API helped shape patterns for React Actions
    “leading the charge there”
    YouTube
    Unverified1 source· Talk
  • integrates with
    “an early prototype of Expo Router using universal Server Components”
    YouTube
    Unverified1 source· Talk
  • built
    “The goal with Expo Router was to add all these features to native”
    YouTube
    Unverified1 source· Talk
  • feature
    Expo Router: Aims to bring server-side rendering, static site generation, API routes, and data fetching to all platforms
    “will add proper server-side rendering, static site generation, API routes, and data fetching to all platforms”
    YouTube
    Unverified1 source· Talk

Related talks