Facebook's React Native project provides fantastic performance and allows us to implement a fully native look and feel with no compromises.
Since we can share the same core codebase while building for both platforms, projects with React Native can be rapidly spun up in just a couple of weeks.
A great example of one of our recent React Native projects is the app we launched for Prepd to support their viral Kickstarter campaign.
While React Native is our pick for delivering fully native mobile apps, we do occasionally opt for the Ionic 2 toolkit on some projects.
Ionic isn’t as ‘native’ as React Native - the final app doesn't feel like a true native app and is more like a mobile website that can be downloaded as an app, with enhancements to allow it to access functionality on the user's device. An app built with Ionic also requires careful management as it grows in complexity, to avoid slowing the app down too much.
But Ionic is nevertheless a great solution for building simple mobile apps extremely efficiently and rapidly. Using 'stock' UI components allows us to quickly flesh out an application in as little as a few days. We'll often recommend Ionic to clients on a tight budget, or those who want to launch and validate a simple app as quickly as possible before investing heavily in building a fully native app.