Does a Hybrid App Make Sense for a Start-up?

Jas Nijjer
This is Stratum Ltd
4 min readMar 7, 2021
Our preview mockups were created using ‘Previewed’ at https://previewed.app

What is a hybrid app? It’s an app that’s built once and distributed across multiple platforms. Examples of these are React Native and Ionic, these both use web technologies to develop the app.

At Stratum, our goal is to bring the experience that the ultra-luxury travel segment has when booking travel, and other experiences, to a much wider scope of people. This isn’t easy; there is a reason luxury travel agents and concierge services have large fees and small customer bases! However, we have a massive advantage; technology. By augmenting a lot of the time consuming — and, thus, scalability limiting and high overhead requirements — with software solutions we can open the door to quick, informed and trustworthy bookings to a much larger market. This is really exciting, but we need a way to deliver this. We dabbled in the idea of a web app, or even a PWA (progressive web app). However, native mobile applications came out on top.

As a startup, we have extremely limited resources and time. Because of this, we had to really consider how we develop our app. Native offers the best experience and the most flexibility but we didn’t have any developers with extensive IOS or Android development experience. Furthermore, we didn’t have time to develop two apps simultaneously, so we would only be able to develop one app at a time. But with IOS making up 52% of the UK mobile operating system market share, and android not far behind at 47% we couldn’t alienate roughly 50% of users when we launched the app¹.

This is when we discovered Ionic, a platform for developing apps for both IOS and Android. It was exactly what we were looking for. Furthermore, all of our developers had experience with web technologies as well as Angular so the learning curve was quite easy. However, it wasn’t all plain sailing. Ionic has some brilliant built-in elements such as modals or tab bar navigation. However, when you try to go outside of its box it starts to reveal that it’s not really a native app.

I’m not going to go into how Ionic works (or any frameworks mentioned for that matter), but I will give a quick summary. Ionic works by using a web view in the application it builds and then renders the app you make inside this. It uses Cordova or Capacitor to provide native interaction, but most of the time you are working inside this web view. This is great for most things, and amazing when you don’t have a dedicated team just for the app. However, it does come with its limitations. We had issues with keyboard interaction, gesture navigation and it just didn’t feel good enough for us to ship outside of our alpha programme.

At this point, we went back to the drawing board. We want an app that feels native, but actually isn’t native and doesn’t need the resources, time and skillsets required for developing two native apps. In came React Native. It takes the best of both to provide a native rendered app while using a modified version of the React framework so we can still use our familiar technologies. React Native renders the app by creating the native element on the host OS rather than running the app in a web view. This means we get a native-like feel without making a native app. Furthermore, in the 6–12 months between starting the Ionic app, the team had developed a preference to React for our web projects, so this was the perfect time to give it a go.

When we got going, we really enjoyed React Native, it fixed all our pet peeves with Ionic and we found that our pace of development was faster as well. However, as always, the honeymoon period didn’t last long. We ran into a blocker and it was a big one. We were using Expo to develop our React Native app and it was a massive contribution to why we were progressing so quickly.

However, our concierge was currently running on Intercom. Expo didn’t support Intercom. Our options were: eject the app from Expo and lose all the benefits or find an alternative solution. We decided on the latter. This was our plan in the long run so it wasn’t a massive issue overall, but it did mean our roadmap had been shifted around.

We persisted, though. React Native is a brilliant platform for us and we are still enjoying developing our app using it three months on.

We’ve learnt a lot about hybrid apps over the last year. From vaguely knowing what they are to being ready to ship, we have experienced the advantages and compromises they offer. Overall, hybrid apps are a great option for most apps that are focused on handling data to and from an API with common design patterns. In most cases Ionic or React Native will do this for you, although we found React Native a better option in our case. My suggestion would be to try both to weigh up the compromises, and you will be able to ascertain how comfortable you are with these (or if you’re lucky you will find none).

So, in summary, hybrid apps make a lot of sense for many businesses, but they really shine when you have limited resources and time, and you need to ship.

If you’d like to keep up to date on our travel offers and become an early member of Stratum’s disruptive platform, follow us on Instagram and LinkedIn and we’ll keep you updated.

--

--