2018 was the year React Native first became a viable option for many organisations – the year when the question changed from 'Why?' to 'Why not?'.
For many organisations, apart from managing increased expectations from consumers, increasing the number of platforms can result in increased adoption due to the wider audience now able to access the application. The ability to target multiple platforms has made React Native an ever-more compelling strategic choice for user interface.
Combine this with the sharing of component libraries across teams utilising other tools in the React ecosystem, such as Storybook, and the era of platform agnostic UI development and design systems is here. On a recent client project, we saw around 80% code reuse whilst targeting three platforms – iOS, Android, and web with React Native Web. After an initial setup period, speed of delivery increased significantly.
Fundamental to its success, React Native has a vibrant community of contributors and companies moving it forward, including tech giants such as Facebook and Microsoft. Given this plus the fact that the underlying technology is React – a battle-hardened and widely-used library – stakeholders can feel warm inside knowing that there’s a considerable ongoing investment, reducing the risk of a technological dead end.
While React Native is a strong proposition, there are a number of considerations you must take into account, especially if you have existing native development teams in place. Given the unfortunate tribal nature of software development, it’s important to take care to integrate these groups without friction. You can be sure that a few toes will be trodden on until the dynamic is established. The experience of Airbnb, which stopped using React Native, is an interesting case study showing it’s not necessarily a solution for everybody.