One Shoe | 16 jan 2018
A couple of months ago we at One Shoe were asked by Leadingcourses.com to build an app that provides golfers with trustworthy up-to-date information on green fees and golf courses all over the world. As a business with different types of users who possess different types of devices, Leadingcourses.com required a mobile app for both Android and IOS devices. But instead of immediately putting our mobile developers to work, we came up with a solid developing solution that would benefit Leadingcourses.com in several ways: we advised Leadingcourses.com to build the app using React-Native and Expo.
In this article, our CTO Jordy van Raaij explains why React-Native is a great option for businesses to create performant iOS and Android applications.
What is React-Native?
React-Native is developed by Facebook and used by big (tech) companies such as Walmart, Instagram, Airbnb, Tesla and UberEATS. With a large community behind React-Native the platform is evolving every day.
What is Expo?
Expo is a free and open-source toolchain around React-Native to help developers build native iOS and Android apps. The toolchain includes over the air (OTA) updates, easy build tooling and a lot of extra API’s on top of React-Native.
Five benefits of React-Native and Expo compared to native mobile app development
1. Support both iOS and Android from the start
Where traditional development of an iOS app (Swift) and Android app (Java) requires two apps being built from the ground up, React-Native enables developers to work from one codebase while developing for both the iOS and Android platform at the same time.
What does this mean for you? This saves a lot of time developing the apps and makes maintenance of your apps cheaper and leaner because your developers don’t have to do the same job twice. At least 90% of the codebase (depending on the functionalities of your app) can be shared by both platforms.
2. Monitor the development process of your app instantly with Expo tooling
When it comes to monitoring the progress of your app being build or testing newly build features you normally have to wait for a demo-presentation from the developers, a TestFlight (iOS) setup or a fully build Android app. This process is very time consuming for developers and is not very transparent for monitoring the status of your app.
Now, with the Expo app (for both iOS and Android) you’re able to monitor the progress of your apps and test new features while the apps are being build. Developers can publish new versions of the app which then will be available on your own devices through the Expo app. This makes it much more easy to test features on multiple devices and you can test the apps everywhere you want. With this lean way of testing you’re able to provide feedback in earlier stages and thus improving the quality of the features being build.
3. Save valuable time when creating production builds
Normally, if you want to publish your newly-built app in the Apple App Store and Android Play Store you will need to configure and generate your app through Apple’s Xcode and Android Studio software. This process requires a lot of configuration and time from your developers.
If you choose to have your app built with React-Native and Expo, the Expo tooling enables your developers to generate standalone iOS and Android builds with a single configuration file. With a single command, developers can make Expo do the heavy lifting by generating new builds for both iOS and Android. This process will take less time. Time that instead can be spent on developing new features for your apps and gives you more value for money.
4. Publish updates for your apps faster
Once your app is published in the Apple App Store and Android Play Store you’ll most likely want to improve the app with new features for your users. Normally this requires going through the whole build progress again and uploading updated versions of your apps to the app stores, which can take up a serious amount of time before being approved by Apple or Android. Then the updated apps then need to be manually installed by your users.
The advantage of React-Native and Expo is that you’re able to develop and publish updates for your apps faster. This is done via over the air (OTA) updates. When an update is ready for production you can easily publish the feature. Expo will minify the code for the update and upload it to Amazon S3. The new update will be downloaded asynchronously while the user is using the app. This means that the next time the user opens the app the update will be available for them. No need to update the app through the app store manually. This saves a lot of time and makes developing and publishing updates for your apps a breeze.
5. You only need one type of developer for maintaining your apps
Let’s assume you want to develop your apps or to the maintenance of your apps in-house. This means you will need an iOS developer (Swift) and an Android developer (Java) which can be very expensive.
Faster development, efficient utilisation of resources and reduced costs with React-Native and Expo
Having your apps built with React-Native and Expo will give you more value for money while being able to monitor the progress of development more closely and publish new features to you users faster. With React-Native it’s possible to build rich business apps while spending less.
Want to learn more about how building apps React-Native and Expo can help reach your business goals? Don’t hesitate to get in touch.
About the author