React Native vs Xamarin: What are the differences?
Developers describe React Native as "A framework for building native apps with React". React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native. On the other hand, Xamarin is detailed as "Create iOS, Android and Mac apps in C#". Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
React Native and Xamarin can be categorized as "Cross-Platform Mobile Development" tools.
Some of the features offered by React Native are:
- Native iOS Components
- Asynchronous Execution
- Touch Handling
On the other hand, Xamarin provides the following key features:
- Cross-platform development- Thinking about supporting iOS, Android, Mac and Windows? Xamarin allows you to write it all in C#.
- Reuse existing code- Use your favorite .NET libraries in Xamarin apps. Easily use third-party native libraries and frameworks.
- Discover as you type- Explore APIs as you type with code autocompletion.
"Learn once write everywhere", "Cross platform" and "Javascript" are the key factors why developers consider React Native; whereas "Power of c# on mobile devices", "Native apps with native ui controls" and "Native performance" are the primary reasons why Xamarin is favored.
React Native is an open source tool with 78.3K GitHub stars and 17.5K GitHub forks. Here's a link to React Native's open source repository on GitHub.
According to the StackShare community, React Native has a broader approval, being mentioned in 701 company stacks & 781 developers stacks; compared to Xamarin, which is listed in 74 company stacks and 65 developer stacks.