Category: Technology

React Native: Building Mobile Products (MVP)

React Native for Building Great Cross Platform Products

 

W

hat is React Native?

 

React Native is a Javascript framework that was built by Facebook and re-licensed for use by third parties in 2017. It allows developers to create apps for both iOS and Android web stores using a single codebase and a single programming language. With React Native, developers have the ability to write one React code that compiles to native applications on both iOS and Android, rather than having to construct parallel codebases in multiple programming languages.

What are the Benefits to React Native Development?

Time and Cost Savings

Prior to the release of React Native a company was required to either find engineers that had experience with both iOS Android programming languages, or to hire separate developers to work on each platform individually.

 

In contrast, React Native allows you to have a single team of developers experienced in one primary programming language who can work on both platforms simultaneously in one single codebase. Depending on the functionalities of your app, at least 90% of the codebase can be shared across both platforms and since all the versions of your software are written in mostly the same code, updating and adding features becomes much faster and easier.

 

Though there are some differences between iOS and Android that need to be accounted for when using React Native, the time and cost savings of having one codebase are a huge benefit.

Open Source Libraries and the React Community

When using React Native you are taking advantage of the wider open source community and ecosystem that exists around React and Javascript.; A tremendous number of libraries exist that can be used for common mobile application features, meaning you won’t have to spend so much time writing code to add extra features to your app- it’s likely that that functionality has already been built and shared with the community.

 

Additionally, the number of engineers employed by Facebook, as well as a big open source community means a continued improvement in the platform over time.

Shared Web App Code

If your mobile app also calls for a web browser/desktop application, React Native can provide some reuse and sharing of code between those platforms. Because React Native is just React and JavaScript code, an experienced development team could get a head start on a web application.

 

Additionally, Electrode Native is an open source tool that will allow you to migrate existing React apps to React Native.

Who Uses React Native?

Because it’s such a reliable and powerful cross platform development tool, React Native is being used by many top companies to develop their mobile apps.

 

Facebook uses React Native for their social media site as well as for Facebook ads manager and Facebook analytics. Instagram was able to share around 85% of code between its Android and iOS apps by using React Native, allowing their team to deliver the app much more quickly than would have been possible using a Native solution. And Tesla’s app, an integral part of its user interface that enables users to remotely monitor and control their Tesla car or Powerwall from their iPhone or Android, was developed using React Native.

 

With React Native, developing and supporting apps for both iOS and Android is less effort it once was. From the ability to develop apps across platforms using one codebase to the benefits of utilizing the open source community, React Native provides an optimal framework for developing awesome cross platform products.

 

The right eCommerce solution

Which is the right eCommerce solution for my business?

 

Finding the right Partner for your E-commerce Business The new trend is to build a Marketplace using SaaS, and extend functionality with a plugins development.

Ecommerce in numbers

In 2019, retail e-commerce marketplace sales worldwide amounted to US$3.46 trillion, and e-retail revenues are projected to grow to a dizzying US$6.54 trillion in 2022 and will continue to drive the future of e-commerce forward. B2B (business-to-business) marketplace sales transactions are set to boom and will account for an estimated 30% of all worldwide online sales by 2024.

 

Combined, both B2B and B2C (business-to-consumer) marketplaces are expected to grow web sales worldwide to an estimated $7.1 trillion while peer-to-peer marketplaces including eBay and Airbnb will reach $240 billion in combined sales by 2024. However, the area with the fastest-growing global marketplaces will be in B2B.

 

Currently, only a small percentage of the annual worth of online B2B sales are made via marketplaces however, businesses are starting to realize the benefits of trading with partners via marketplace platforms. In this regard, as more businesses trade online, global sales will continue to grow which will include a wide range of industries and vertical markets.

Should I build around a SaaS?

SaaS, or otherwise known as Software-as-a-Service, is a software distribution model in which a service provider hosts applications via the internet for customers. SaaS falls under the form of cloud computing. Usage is subscription-based charging businesses either monthly, bi-annually, or annually to use the service. These online subscriptions come with their respective technical support and periodic upgrades, SaaS companies deliver usability without bogging down customers with details. You access content through a web browser interface and your content is hosted in either a cloud or shared server. There are a variety of businesses that provide this service for marketplace development such as Arcadier, CS-Cart, Dokan, and Sharetribe.

How can I customize the SaaS?

 

A plugin is a software add-on that is installed on a program, enhancing its capabilities. It is a form of integration of a separate application to the main platform, either by the platform owners themselves or by other third parties. For instance, you like to add an email marketing tool to your eCommerce business and you are using Shopify or Woocommerce to build your eCommerce, you can utilize the Quickbooks plugin that seamlessly works with your Shopify Store or your book-keeping or LiveChat plugin to create your customer support chat capability. A number of online store platforms offer a plugin that can turn your single merchant shopping cart into a multi-vendor shopping cart experience. Most of these were developed by third-party developers using their respective APIs and Webhooks, and these developers charge a fee for its use.

What option best suits my business model? 

This is the first question that goes through the minds of people who are trying to start their first eCommerce marketplace. Go with a SaaS provider such as Arcadier, CS-Cart, Dokan or Sharetribe, or via a plugin alternative that augments your platform to become a marketplace for online store platforms such as Shopify, Magento, or Woocommerce? It is key to understand the comparisons of their respective software delivery models.

 

The answer to this question will be dependent on three factors: User preference, costs involved, and feasibility associated with plugin systems.

 

Using standalone plugins is a great option, but it does have its limitations. For example, the plugin builder will still have to work within the confines of the eCommerce platform to change a user experience that is not natural to the main use case of the eCommerce platform. Dedicated Marketplace SaaS products have been built for the purpose of the marketplace experience in mind, so the user experience is designed from the ground up for a multi-vendor experience.

Build a team for your eCommerce business

 

Marketplace SaaS solutions are not significantly more expensive than what most plugin developers are charging for the download and use of their plugin. However, the risk of failure that the augmentation using a plug-in to a platform not developed to be a marketplace makes a dedicated marketplace SaaS solution a safer bet. The features provided by SaaS also enable businesses to efficiently create their own marketplace because a lot of the heavy lifting is already done for you, plug-and-play extensions, themes for your front-end, site optimization, dedicated support, analytics, and bug fixes are such examples.

 

The SaaS option is built-for-purpose but that does not necessarily mean the plugin alternative option should be ruled out, it is still a good option for building a marketplace, however, there lies the problem that all the plugin components on your platform of choice may not necessarily be able to properly shake hands with each other especially on more mature platforms.

Build fast and iterate 

 

SaaS vs Open-Source eCommerce solutions has their similarities, benefits, differences, and challenges. Both have their own niche market and success stories. A lot of people have built excellent marketplaces around both solutions.

 

The main factors to consider when choosing an eCommerce solution are budget, technical proficiency, and knowledge, and how serious are your plans to scale your business.

 

The more niche or more mature your marketplace is, the more customization will require.

Android or iOS for retail?

Develop apps for both platforms using cross-platform development tools, like React Native or Flutter 

Many retailers face a difficult decision: should their mobile retail shopping app support Android or iOS? They feel their limited resources cannot be stretched to build and support both platforms, so they often pick just one. Some retailers may have already committed to one platform, but are unsure if they made the right choice. Others have not yet developed on either platform and are exploring options for their first mobile shopping app. With our past experience working with large retailers, we believe that to maximize revenue from mobile, companies need a presence on both Android and iOS in order to avoid losing the opportunities that each platform provides.

This article will explore the options available for retailers with only one app or no native mobile app at all. We will show you why supporting both platforms is the only choice, and how using a cross-platform development tool like React Native or Flutter, provides the resources to support both platforms at 60% of the cost.

Should you have a mobile retail app at all?

Our research shows that any retailer interested in keeping up in the current, competitive omni-channel environment needs a mobile presence. The number of retailer mobile apps actively used by consumers has doubled in 2019, from an average of four apps per phone to eight. According to studies:

  • 72% of consumers use apps for browsing products
  • 60% for accessing discount coupons
  • 57% for making purchases
  • 86% are happy with the customer experience provided by retail mobile native apps.

What about relying on a mobile website instead of a native app? Let’s look at the data:

  • The average time a user spends on their mobile phone: 4 hours, 10 minutes
  • How long a user spends time browsing the mobile web: 32 minutes 
  • How long a user spends time using mobile apps: 3 hours 40 minutes 

Users no longer consider the mobile web as a viable alternative as 90% of mobile usage time is spent on apps. The mobile web does not seem as responsive to user inputs as a native app. For the user, a native app is a much more immersive experience. For the retailer, a native app offers a superior branding opportunity. Clearly, not having a mobile retail presence is a costly mistake for any retailer. Your customer expects the convenience of mobile shopping, and the responsive performance of a native app.

What each platform offers

Both platforms have plenty to offer. Internally, there may be discussions about whether marketers should target heavy spenders among iOS users, or whether they should cater to Android users, who continue to outnumber iOS users 6-1?

The decision will depend on many factors, such as your app category or your target audience. In some regions and demographics, Android dominates, while in other areas, iOS dominates. It is important to prioritize your targets and tactics based on the audience you want to engage.

A case for Android

According to IDC, Android phones have 85% of the global market share as of 2019, while Apple iOS has only 12%. The other 2% is split amongst all other mobile operating systems.

Statistics show that Android users spend slightly more time interacting in the app than iOS users do. In the case of retail shopping apps, Android users spend an average of 7.6 minutes vs. the 6.6 minutes iOS users spend.

So, given the high lead in market share, Android seems like the logical choice for your first app, right? Not so fast…

A case for iOS

It is generally accepted that iOS users are more profitable for retailers than Android users. Figures released by Google and compiled by Benedict Evans provide some hard data on just how big that gap is.

“Google Android users in total are spending around half as much on apps on more than twice the user base, and hence app ARPU (Average revenue per user) on Android is roughly a quarter of iOS.”

A study in 2014 shows that the median iPhone app user earns $85,000 per year, which is 40% more than the median Android phone user, with an annual income of $61,000. Even though Android has far more downloads than iOS, iPhone users spend twice as much on their phone than their Android counterparts. Another study of small retail purchases found that on average, Android users spent $11.54 per transaction. iPhone users, on the other hand, spent $32.94. Independent research indicates that the perception that iOS users are the “Big Spender” platform is more than a stereotype — It’s an observation supported by facts.

Impressive engagement rates suggest that iOS users offer better value for money than their Android counterparts. So obviously iOS development is more cost-effective than Android, right? Well, there is still more to consider…

Regional differences

The physical location of your target audience can make a large difference in the type of platform used. Note that iOS is favored in regions with large amounts of disposable income. Android sees high usage in lower-income areas of developed markets. In emerging markets, Android extends its lead even further.

The demographics and income profiles of the target region can also have a significant impact on the choice of the platform the retailer chooses to concentrate on. User age, gender, education, and other factors not covered here may also impact the platform choice. The decision process can become quite complex with no conclusive answer.

The cost of developing for both platforms

To maximize revenue from mobile, companies need a presence on both Android and iOS to avoid losing the opportunities that each platform provides. We have seen that Android downloads far exceed iOS downloads. We have also seen that the iOS purchase value exceeds that of Android. To further complicate matters, target regions, and other demographics matter. Even the type of purchase may favor one platform over the other, so the most ideal solution is to develop apps for both platforms.

Recall that the reason we were forced to choose between the two platforms in the first place was to control development and support costs. Two apps, one for each platform, will cost twice as much as developing one app, says conventional thinking. We are glad to report that this is no longer the case. Cross-platform development tools, like Facebook’s React Native or Google’s Flutter, have come to save us.

Buy one, get one free

Both React Native and Flutter are an excellent cross-platform development framework. The initial investment in app development using these frameworks will yield applications for both platforms with native app performance.

They offer strong support and backing of the biggest technology companies with a highly-attractive UI and excellent native performance. Once the developer is up-to-speed using the programming environment, development time is faster than any alternatives.

To learn more about React Native and its advantages over other cross-platform development tools like Iconic or Flutter, check out our blog post Why React Native should be your next mobile development framework.

If you do not have any app neither Android nor iOS

Developing in React Native or Flutter will yield an app for both platforms with the same resource cost as building for a single platform. We estimate that it is 60% cheaper to use React Native or Flutter as your development platform than using Swift and Kotlin. The code is only written once for both apps. Also, from our experience developing in native and cross-platform applications, we estimate developing with React Native or Flutter is about 15% more resource-efficient than the native languages.

If you already have an app on one platform

Already have one platform app developed? Using a cross-platform tool still makes sense. Using React Native or Flutter for developing your second app will incur the same development resources as developing using a native language, possibly slightly less. However, both applications will now use common code, saving future costs for maintenance and upgrades. Consistency of look and feel between the two apps will also have a positive effect on corporate branding.

Conclusion – You can afford to have mobile apps on both platforms

The days of choosing between Android or iOS have long past. It is now a requirement to support both platforms. Ignoring either platform has direct negative consequences on your revenue stream. Fortunately, the days of having to choose platforms based on development costs are behind us. Both React Native or Flutter development tools can build a cross-platform application for both Android and iOS with the same performance as development based on native application language for the same cost as a single platform. The cost savings extend to app maintenance as well. Contact Towa Software for further information or a quote for us to build out or update your mobile application portfolio.