React Native is the Way To Go for Mobile App Development at Shopify

React Native is the Way To Go for Mobile App Development at Shopify

Shopify has been experimenting with React Native for quite a few years now. Now, they have decided to adopt the framework for mobile app development in the future run. According to Shopify, it not only doubles productivity, but its one codebase feature allows up to 95% code sharing. The code can further be used at different mobile platforms.

After Shopify acquired Tictail, they joined the journey with React Native. Tictail, itself was a company doing its development and building projects to React Native. Shopify focused on React Native mainly because they were already using React in their web products. Hence, Shopify tried to explore React models in their mobile apps. In 2019, Shopify’s three teams decided to build three apps- Arrive, Point of Sale, and Compass. Arrive was an order tracking tool for customers. Point of Sale and Compass’s main focus was to target the sellers.

What is React Native?

It is an open-source mobile application framework for building native mobile apps and was created by Facebook in 2015. It has the best Javascript library that you can use to build your native mobile user interfaces. After spending a year in experimenting with React Native, Shopify declared that they would adopt this framework at Shopify for future mobile app development.

How React Native works?

React native is providing a convenient way to build native mobile apps using JavaScript. It works in a similar way as React does. It allows developers to create user interfaces in JavaScript, for which it renders native components, i.e., written in Objective C, Java, or Swift) instead of providing HTML. Using native platform bindings, it can translate virtual DOM into mobile natives. Further, this binding contracts with application logic in Javascript. 

The React Native was first available only for Android and iOS platforms. After the community-driven efforts, Facebook supported them and has brought it Shopify to other platforms as well

How React Native Works
Source: https://engineering.shopify.com/blogs/engineering/react-native-future-mobile-shopify

Reasons that Shopify Switched to React Native

The reason behind choosing React Native is that they were already using it extensively for their web products. Therefore, they already knew the advantages and disadvantages of the React Native framework, and somewhere they may found it beneficial. They see the performance curve circling in the upward direction. And they can long-term invest in it as they do in Rich Media, Ruby, Rails, etc. 

They learned from the acquisition of Ticktail ( a first mobile company that focused 100% on Cross-platform React Native) in 2018, how far React Native has come, and their three teams started developing three different apps using React Native. That’s why they chose to go ahead with it and decide to use it to build their mobile apps.

Shopify engineering veep Farhan Thawar explained why the team is changing from native mobile development to cross-platform framework and React Native in particular. He says, “After years of native mobile development, we’ve decided to go full steam ahead, building all of our new mobile apps using React Native.”

1. Arrive

Developers used React Native to build Arrive. The app was initially built on iOS platforms. Afterward, it was launched on Android at almost no cost. Shopify says both versions shared 95% of their codebases. Shopify also reduced the number of crashes compared with the Native. Arrive also allows you to scan a QR code linked with a GitHub pull request.

2. Point of Sale

Shopify used React Native to create Android Point od Sale’s app and left iOS app out of the zone in the original plan. It used two versions of separate and compared development speed using native iOS technology and React Native on Android. Shopify also compared the performance of the Android React Native version with the native iOS app. At Unite 2019, Point of Sale was rewritten, and the native iOS and React Native Android apps are expected to launch in 2020.

3. Compass

With Compass, Shopify compared three technologies- native, Flutter, and React Native. After the comparisons, Shopify went along with React Native and launched the app on iOS and Android in three months only. Shopify claims that the apps on different platforms approximately shared 99% code.

When is it not Default to Use React Native?

While developing apps with React Native, there will be situations when things might go wrong. For example, if react native development services have a requirement of:

  • Deploying older hardware (CPU <1.5GHz)
  • High performance
  • Background threads.

What could go wrong while developing apps with React Native?

There are tons of reasons why developers love developing mobile apps on the React Native framework. But, there are many things that might go wrong while developing apps with React Native. These include:

  • Wrong estimation of different layouts for iOS and Android versions.
  • Most of the time external module’s codes don’t work
  • Redux helps in storing and managing the data. Most of the developers go the wrong way in redux store planning.

Shopify and React-Native’s Future

Shopify believes that they will join forces with React Native. It does not mean that they will build all their apps or re-build apps on the new tech. Shopify will keep using low-level native frameworks for some of the apps. They say that they will only write components using native technologies when performance needs it. The Shopify Ping app has enabled thousands of users on iOS. In 2020, Shopify will build its Android version using React Native.

In 2019, Twitter came up with its desktop and mobile web apps using React Native Web. It also allows you to use React Native stack for your web apps. At Shopify, developers will be doing some more Native Web experiments in 2020 too. Parangat Technologies is a top Shopify web & app development company having a top React Native app developer that can build great Shopify apps. If you want to develop Shopify like apps with React-Native, then get in touch with us. 

For further queries related to Shopify mobile app development, please talk right away to our consultant team.