WhoBuilt

React Native EU 2023 Keynote

Sep 22, 2023· 24 min· 4.5K views·Watch on YouTube

Speakers

Łukasz Chludziński of Callstack, with Meta engineers Alex Hunt and Riccardo Cipolleschi, opens React Native EU 2023 in Poland with a case for React Native’s business readiness and updates planned for version 0.73.

React Native and business readiness

Łukasz uses Airbnb’s 2018 articles about sunsetting React Native as a starting point for discussing business readiness in 2023. He says organizational challenges such as team collaboration, leadership, and training remain relevant, but can be addressed. He argues that React Native’s technical state has improved, with community work filling gaps that once made it harder to use in production.

Metro and debugging improvements

Alex describes planned Metro improvements in React Native 0.73, including stable symlink support enabled by default and better support for Xcode and Android builds in template projects. He also presents a first-party debugger based on Chrome DevTools, launched from the Dev Menu or CLI, with Hermes buffering console logs until a debugger connects. The team plans to expand debugging features over time and begin deprecating React Native’s built-in Flipper integration as the default; new projects are planned to stop including it by default in 0.74.

Platform and template updates

Łukasz outlines preparation for Android 14 and iOS 17, including a move from JDK 11 to 17 on Android and a higher minimum iOS version, from 12.4 to 13.4. He recommends Upgrade Helper to handle configuration changes. The React Native template is also planned to use Kotlin for MainActivity and MainApplication, reducing those files’ code size by nearly 30 percent.

New Architecture progress

Riccardo says the New Architecture remains experimental and asks developers to try it and share feedback rather than use it in production. React Native 0.73 is planned to include an interop layer that acts as a bridge proxy, allowing teams to migrate native modules and components incrementally. He also describes replacing view managers with static view configs generated by Codegen.

Takeaways

  • Assess React Native against your product’s needs and organizational constraints; Airbnb’s 2018 experience is not a universal verdict.
  • Plan for Metro symlink support and review native project configuration when upgrading to React Native 0.73.
  • Use Hermes with the first-party debugger to access buffered console logs when connecting after the app starts.
  • Treat the New Architecture as experimental and test its interop layer against your app before planning a migration.
  • Kotlin templates reduce boilerplate in the Android entry-point files, while Android 14 and iOS 17 preparation may require configuration updates.

Mentioned in this talk

Search inside this talk

What was claimed 12

  • role at
    “the headquarters of Callstack”
    YouTube
    Unverified1 source· Talk
  • role at
    Riccardo Cipolleschi is Core team member at Meta
    Verified5 sources· Talk
  • feature
    React Native: Production-ready framework
    “businesses adopting it can rely on React Native as a production-ready framework”
    YouTube
    Unverified1 source· Talk
  • metric
    React Native: Downloads of the newest version rose by 40% in three months
    “downloads of the newest version rose by 40% in just three months”
    YouTube
    Unverified1 source· Talk
  • role at
    Alex Hunt is software engineer at Meta
    “I’m Alex, a software engineer at Meta”
    YouTube
    Unverified1 source· Talk
  • feature
    React Native 0.73: symlinks enabled by default, with Xcode and Android build support in template projects
    symlinks enabled by default, with Xcode and Android build support in template projects
    “symlinks will be enabled by default”
    YouTube
    Unverified1 source· Talk
  • feature
    React Native 0.73: first-party debugger frontend based on Chrome DevTools
    first-party debugger frontend based on Chrome DevTools
    “our new first-party debugger frontend”
    YouTube
    Unverified1 source· Talk
  • feature
    Hermes Agent: Buffers console.log calls while no debugger is connected and sends them when one connects
    “Hermes now collects all console.log calls in the background”
    YouTube
    Unverified1 source· Talk
  • uses
    “Expo made the switch to Chrome DevTools earlier this year”
    YouTube
    Unverified1 source· Talk
  • feature
    React Native: built-in integration deprecated as the default debugging tool; new projects stop including integration code by default in 0.74
    built-in integration deprecated as the default debugging tool; new projects stop including integration code by default in 0.74
    “In 0.74, new projects will no longer include Flipper's integration code by default”
    YouTube
    Unverified1 source· Talk
  • feature
    React Native 0.73: Kotlin introduced in template projects, replacing Java in MainActivity and MainApplication
    Kotlin introduced in template projects, replacing Java in MainActivity and MainApplication
    “rewrite our MainActivity and MainApplication files from Java to Kotlin”
    YouTube
    Unverified1 source· Talk
  • feature
    React Native 0.73: experimental interop layer allows incremental migration from the bridge
    experimental interop layer allows incremental migration from the bridge
    “you can update incrementally instead of updating everything in one sweep”
    YouTube
    Unverified1 source· Talk

Related talks