Skip to content

React Native architecture

What is your knowledge of the architectural APIs specific to React Native?

React Native architecture ratios over time

Codegen
Concurrent React
DOM components
Expo Modules API
Fabric
Hermes runtime
JSC runtime
JSI
Native modules (legacy architecture)
Native views (legacy architecture)
New Architecture
Over-the-air updates
Server components
Turbo Native Modules
V8 runtime

Mode:

View:

0%
20%
40%
60%
80%
100%
2022
2023
2024
0%
20%
40%
60%
80%
100%

React Native architecture experience & sentiment

Group by:

Sort by:

64%
28.5%
7.3%
1,757
51.4%
39.1%
9.1%
1,746
49.3%
39.3%
11.1%
1,715
47.5%
47%
5%
1,744
42.8%
37.5%
19.5%
1,731
Experience
  • Used it: Respondents who have used an item.
  • Heard of it: Respondents who have heard about an item, but haven't used it.
  • Never heard of it: Respondents who have never heard about an item.
Sentiment
  • Positive: Respondents who are interested in learning more about a technology; or are willing to use it again.
  • Neutral: Responents who did not indicate any sentiment about a technology.
  • Negative: Respondents who are not interested in learning more about a technology; or have used it and had a negative experience.

React Native version

Which React Native version do you use mainly?
0%
9%
18%
27%
36%
46%
1

nightly

18
2

next / rc (release candidate)

49
3

0.76

801
4

0.75

352
5

0.74

314
6

0.73

109
7

0.72

56
8

0.71

24
9

0.70

7
10

0.69 or lower

30
0%
9%
18%
27%
36%
46%
% of question respondents
2024 was undoubtedly the year of the New Architecture. With adoption by the big players in the industry and becoming the default way of creating new React Native applications, we see almost 50% adoption of it - more than double what it was two years ago. This is further confirmed by the rapidly falling interest in parts of the legacy architecture like Native Views and Modules. However, there’s still progress to be made before it becomes the standard - library compatibility continues to be a major issue, which may be related to the relatively large usage of older versions of React Native. The compatibility layers have been improving with each release, enabling even complex legacy libraries (like react-native-maps) to be used on the New Architecture. The future of the framework is clear: the React Native team is committed to making the transition as smooth as possible for the developers, and we are getting to that point commit by commit. We are excited to see where this year will take us.
Jakub Piasecki & Wojciech Lewicki
Software engineers at Software Mansion
We asked members of the React Native community to share their opinions about the results

Upgrade strategy

React Native version upgrading strategy
What is your main strategy for upgrading React Native to a new versions?
0%
7%
14%
21%
28%
35%
1

Stay on the latest version

421
2

Upgrade occasionally

458
3

Upgrade for the new features

96
4

Upgrade in parallel with Expo SDK releases

623
5

Don't upgrade until I have to

166
6

One version behind

7

Other Answers

12
0%
7%
14%
21%
28%
35%
% of question respondents

React Native 0.76 and the New Architecture are enabled by default, but navigating them can be challenging. On the Software Mansion blog, you can find insights on handling common New Architecture challenges like view flattening, view recycling, custom shadow nodes, and more. Read part 1 Read part 2 P.S. If you need help adopting the new architecture in your app, contact us. We have already ported 25+ libraries, migrated several apps for clients, and contributed 30+ fixes to React Native core for issues related to the new arch.

Greenfield vs brownfield

What type of React Native project are you working on?
0%
15%
30%
45%
60%
75%
1

Standalone apps (greenfield)

1,307
2

Integrated apps (brownfield)

126
3

Both

304
0%
15%
30%
45%
60%
75%
% of question respondents

Brownfield integration comes with its challenges. If you are looking for resources on how to successfully integrate React Native into an iOS or Android app, Software Mansion has put together a miniguide to walk you through the process: Read part 1 (iOS) Read part 2 (Android) If you prefer a video format, you can also view the talk on brownfield integration from App.js Conf 2024

Over-the-air updates

What Over-the-air (OTA) updates solutions do you use?
0%
15%
31%
46%
61%
77%
76.5%
957
36.53%
457
3

Self-hosted

10.47%
131
4

Other Answers

0.56%
7
0%
15%
31%
46%
61%
77%
% of question respondents

Mobile-Web code sharing

What methods do you employ for sharing code between mobile and web platforms in your project, if any?
0%
9%
18%
27%
36%
45%
44.61%
600
2

No code sharing. Independent project for the web counterpart of my application.

40.3%
542
3

Common business logic, independent UI components.

25.95%
349
4

WebView running mobile version of a website.

22.3%
300
5.95%
80
6

0.52%
7

monorepo

0.37%
8

Expo Router

0.3%
9

Other Answers

1.41%
19
0%
9%
18%
27%
36%
45%
% of question respondents