DEV Community

Cover image for What's hindering React Native now?

Posted on • Updated on

What's hindering React Native now?

I really like developing mobile applications with React Native, but I wasn't seeing much evidence of widespread adoption. This made me wonder, "Why isn't React Native more popular?"

This question led me to research the main obstacles to React Native's widespread adoption. After reviewing a few articles, I noticed a few common themes among complaints by both developers and teams.

Please note that the following list of themes is based on articles written between 2017 and 2018. Also, this list is not meant to be an exhaustive list of React Native's shortcomings.

What are common concerns about using React Native?

  1. Knowledge of 3 platforms is sometimes required to implement custom features.
  2. Heavy investment in bridging infrastructure may be necessary to implement custom features.
  3. The animations and gestures tend to be non-performant.
  4. Implementing in-app navigation isn't easy.
  5. There tends to be a slow initialisation and first-render time.
  6. There is a lack of parallel threading or multiprocessing support.
  7. It can be difficult to debug errors because stack traces don't jump between React Native and native.
  8. JavaScript is untyped.
  9. React Native apps can have trouble rendering long lists performantly.
  10. Android bundle size can be large.

If you've been developing with React Native recently you may have noticed that there have been major developments in more than one of these areas.

For example, Software Mansion has made significant contributions to animations and gesture-handling with their react-native-reanimated and react-native-gesture-handler packages.

More recently, Shopify have taken a stab at the issue of rendering long lists performantly by open-sourcing their flash-list package.

The questions I have for the broader mobile development community are:

  1. Out of the 10 concerns highlighted above, how many do you believe are still valid?

  2. What do you believe are the top technical reasons preventing teams or companies from adopting React Native for mobile app development today?

If you liked this article, then please support me


Top comments (0)