WhoBuilt

Crossing Paths of React And React Native Ecosystems

Sep 5, 2024· 1 h 5 min· 1.1K views·Watch on YouTube

Speakers

Callstack host Mukesh Kinski talks with Jack Herrington, principal full-stack engineer and Blue Collar Coder creator, and Simon Grimm, Galaxies.dev creator and React Native educator, about the React and React Native ecosystems on React Universe on Air.

React’s architecture enabled multiple platforms

The guests trace React Native’s roots to React’s focus on the view layer and the separation of React core from its renderers. That architecture let React Native render native views, while React DOM continued to render for browsers. They describe shared components, hooks, state logic, and API access as a bridge across platforms.

Expo makes getting started easier

Jack says his React Native work was smooth until he added an ONNX Runtime driver for local AI, where he ran into more friction. He praises Expo’s built-in capabilities, including camera features, and says it is a strong path for apps that stay within its supported ecosystem. The guests compare Expo’s accepted role in React Native with the more contentious choice of frameworks in web React.

Community expectations reflect different setup costs

The guests describe React Native developers as highly engaged, partly because early tooling required hands-on troubleshooting and companies built libraries and support. Jack contrasts that with web development’s more polished starter experience, where developers may expect things to work immediately. Simon says building and shipping a mobile app can feel especially rewarding because it integrates with personal device features such as the camera and microphone.

Universal React brings opportunities and tradeoffs

Simon argues React Native suits many projects when teams value shared code and faster delivery, while acknowledging that other frameworks fit some needs better. The discussion covers experiments in bringing React concepts across platforms, including server components, React Native Skia, and shared component libraries. They also note that web and native still have different renderers, navigation patterns, and platform requirements.

Tooling friction rewards experience

The guests discuss debugging React Native build failures involving Gradle, Swift, Xcode, Node versions, and dependency changes. Simon describes dependency bit rot and says Xcode changes can break workshops that previously worked. They suggest that familiarity helps developers recognize recurring issues, such as provisioning profile problems, while Expo reduces some but not all friction.

Takeaways

  • Choose React Native when shared code and delivery speed matter more than the last few percent of platform-specific performance.
  • Start with Expo to reduce setup friction, and plan for extra debugging if your app needs native modules or custom platform features.
  • Treat web and native as distinct platforms: shared React logic does not remove differences in rendering, navigation, or tooling.
  • Keep project environments reproducible and verify tutorials or workshop code against current toolchain versions.
  • When evaluating a framework, weigh product needs and team costs alongside performance and native integration.

Mentioned in this talk

Search inside this talk

What was claimed 12

Related talks