Skip to main content

First-class Support for TypeScript

· 5 min read
Luna Wei
Luna Wei
Software Engineer at Meta
Nick Gerleman
Nick Gerleman
Software Engineer at Meta

With the release of 0.71, React Native is investing in the TypeScript experience with the following changes:

In this post we’ll cover what these changes mean for you as a TypeScript or Flow user.

Pointer Events in React Native

· 10 min read
Luna Wei
Luna Wei
Software Engineer at Meta
Vincent Riemer
Vincent Riemer
Software Engineer at Meta

Today we are sharing an experimental cross-platform pointer API for React Native. We’ll go over motivations, how it works, and its benefits to React Native users. There are instructions on how to enable and we’re excited to hear your feedback!

It’s been over a year since we shared our many platform vision on the wins of building beyond mobile and how it sets a higher bar for all platforms. During this time, we've increased our investments in React Native for VR, Desktop, and Web. With differences in hardware and interactions on these platforms, it raised the question of how React Native should holistically handle input.

React Native Core Contributor Summit 2022

· 8 min read
Michał Pierzchała
Michał Pierzchała
Head of Technology at Callstack
Nicola Corti
Nicola Corti
Software Engineer at Meta

After years of pandemic and online-only events, we really felt it was time to bring the Core Contributors of React Native together!

That’s why at the beginning of September, we gathered some of the active core contributors of React Native, library maintainers, and the Meta’s React Native and Metro teams to the Core Contributor Summit 2022. Callstack hosted the Summit in their HQ in Wrocław, Poland, as a part of the React Native EU conference happening at the same time.

Together with the React Native core team, we devised a series of workshops in which the attendees could participate. The topics were:

  • ​​React Native Codegen & TypeScript Support
  • ​​React Native New Architecture Library Migration
  • ​​React Native Monorepo
  • Metro Web and Ecosystem Alignment
  • Metro Simplified Release Workflow

We were impressed by the amount of knowledge-sharing and collaboration over those two days. In this blog post, we’d like to give you a sneak peek of the results of this gathering.

Announcing React Native 0.70

· 5 min read
Dmytro Rykun
Dmytro Rykun
Software Engineer at Meta
Thibault Malbranche
Thibault Malbranche
Lead Mobile Engineer at Brigad
Nicola Corti
Nicola Corti
Software Engineer at Meta
Lorenzo Sciandra
Lorenzo Sciandra
Senior Software Engineer at Microsoft

We are excited to release a new version of React Native, 0.70.0. This version comes with several improvements like a new unified configuration for Codegen, Hermes as default engine, and full CMake support for Android builds along with a refresh of the documentation for the New Architecture. Read on to learn more!

Sections

Hermes as the Default

· 5 min read
Michael Leon
Michael Leon
Software Engineer at Meta

Last October, we announced that we had started work towards making Hermes the default engine for all React Native apps.

Hermes has provided a lot of value to React Native inside of Meta, and we believe the open-source community will benefit as well. Hermes is designed for resource constrained devices and optimizes for start up, app size, and memory consumption. One key difference between Hermes and other JS engines is its ability to compile JavaScript source code to bytecode ahead of time. This precompiled bytecode is bundled inside the binary, and saves the interpreter from having to perform this expensive step during app startup.

Since the announcement, a lot of work has gone into making Hermes better, and today, we are excited to share that React Native 0.70 will ship with Hermes as the default engine. This means that all new projects starting on v0.70 will have Hermes enabled by default. With the rollout coming up in July, we want to work closely with the community and make sure the transition is smooth and brings value to all users. This blogpost will go over what you can expect from the change, performance benchmarks, new features, and more. Note that you don’t need to wait for React Native 0.70 to start using Hermes - you can follow these instructions to enable Hermes on your existing React Native app.

Note that while Hermes will be enabled by default in new React Native projects, support for other engines will continue.

Helping migrate React Native libraries to the New Architecture

· 6 min read
Riccardo Cipolleschi
Riccardo Cipolleschi
Software Engineer at Meta

tl; dr: We are working on improving the resources supporting the React Native New Architecture. We have already released a repository to help migrate your app (RNNewArchitectureApp) and one for your libraries (RNNewArchitectureLibraries). We are also revamping the New Architecture guide on the Website and we created a GitHub Working Group to answer questions related to the New Architecture.

React Native Accessibility - GAAD 2022 Update

· 3 min read
Alex Tait
React Native Accessibility Community Manager

May 19th, 2022 marks the 11th annual celebration of Global Accessibility Awareness Day and we wanted to update everyone on the accessibility progress we’ve made on the React Native Framework. Meta (formerly Facebook) was the first organization to take the GAAD pledge in 2020, committing to making the React Native framework accessible.

“We hope this pledge makes it easier for developers using React Native to create fully accessible mobile apps and inspires other organizations to make similar commitments to a more accessible future.”

Mike Shebanek, head of accessibility Meta, 2020

The process initially began with a thorough review and gap analysis of the framework focused on React Native utilized the iOS and Android APIs to support accessibility features. Dozens of issues have since been fixed or closed out, making good on the pledge to make React Native accessible and advancing the accessibility of the framework ever forward.

We didn’t stop there, and in early 2022, we reviewed and prioritized the remaining issues from this gap analysis on the Improved React Native Accessibility Board based on their impact on developers and end users.

An update on the New Architecture Rollout

· 7 min read
Nicola Corti
Nicola Corti
Software Engineer at Meta

Hi everyone, As previously announced:

2022 is going to be the year of the New Architecture in open source

If you still haven’t had the time to look into the New React Native Architecture (the Fabric Renderer and the TurboModule system), there is no better time to do it than now!

We would like to share with the community some initiatives and material we prepared to make sure everyone is onboard on this endeavor.