Your mobile financial app is critical for user acquisition and retention. In the mobile age, every company has an app, and app creators compete on quick updates, the latest features, and consistent user experience.
But is React Native the right option for all mobile projects, particularly those with firm budgets and timelines? To help answer this question, we put it to the test and built out our own app on React Native. Here’s the story and what we learned…
Given our focus on the financial services space, we decided to build Stock Alert, a simple mobile application allows a user to set price notifications for their favorite stocks. When a stock reaches or falls to a certain price, the app creates a notification so the user can take action. (Check out Stock Alert on iPhone or Android!)
Ultimately, our team of three engineers with experience in web development, but without prior experience in React.js or React Native, were able to write a working app in less than four weeks. We even had time to include forward-thinking features beyond the initial scope of our first prototype.
React Native is so quick to learn and use that we were able to add more features and still hit our target deadline. It’s the catalyst of reverse scope creep.
What We Learned Building in React Native
Cut Past the Cruft
For an app that runs on both iOS and Android, our code reuse exceeded 99 percent. The large plugin ecosystem helped fill the gaps in the standard framework too. That’s a 50 percent cost savings on engineering budget when building for both platforms.
Cohesive User Experiences
Users expect mobile applications to feel performant and look good. By using native components, React Native delivers.
Downsides of React Native
As with all frameworks, React Native has its shortcomings…
Still in Alpha
React Native is young. That means the framework is updated frequently and is liable to cause breaking changes. A good development team will only carefully upgrade their React Native version during development at this time.
Native Code Still (Sometimes) Required
React Native already has an impressive ecosystem of developer-created plugins that offer a lot of functionality on top of the base framework. That said, there are pockets of missing functionality that require developers to write native code.
While React Native apps look very consistent across devices, there can be some extra development time required to fix small differences that occur between platforms.
A team experienced in mobile development is unlikely to benefit from React Native. Learning a new framework is still learning: it takes time. Development tools for the respective platforms, once mastered, are more robust and intuitive, especially XCode’s Interface Builder. Unless your project will hop around to teams of unknown skill sets, don’t switch horses mid-race.
Developer Hardware Requirements
As with all cross-platform frameworks, in order to build for iOS, you need to develop on a Mac. This isn’t a problem exclusive to React Native, but it’s worth making sure your team has the right hardware.