1.3K
1.5K
+ 1
785

What is Xamarin?

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.
Xamarin is a tool in the Cross-Platform Mobile Development category of a tech stack.
Xamarin is an open source tool with GitHub stars and GitHub forks. Here’s a link to Xamarin's open source repository on GitHub

Who uses Xamarin?

Companies
144 companies reportedly use Xamarin in their tech stacks, including doubleSlash, Olo, and Scopeland Technology GmbH.

Developers
1082 developers on StackShare have stated that they use Xamarin.

Xamarin Integrations

.NET, OneSignal, Bitrise, bitwarden, and Raygun are some of the popular tools that integrate with Xamarin. Here's a list of all 21 tools that integrate with Xamarin.
Pros of Xamarin
121
Power of c# on mobile devices
81
Native performance
79
Native apps with native ui controls
73
No javascript - truely compiled code
67
Sharing more than 90% of code over all platforms
45
Ability to leverage visual studio
44
Mvvm pattern
44
Many great c# libraries
36
Amazing support
34
Powerful platform for .net developers
19
GUI Native look and Feel
16
Nuget package manager
12
Free
9
Backed by Microsoft
9
Enables code reuse on server
8
Faster Development
7
Use of third-party .NET libraries
7
It's free since Apr 2016
7
Best performance than other cross-platform
7
Easy Debug and Trace
7
Open Source
6
Mac IDE (Xamarin Studio)
6
Xamarin.forms is the best, it's amazing
5
That just work for every scenario
5
C# mult paradigm language
5
Power of C#, no javascript, visual studio
4
Great docs
4
Compatible to develop Hybrid apps
4
Microsoft stack
4
Microsoft backed
3
Well Designed
3
Small learning curve for Mobile developers
2
Ionic
2
Ability to leverage legacy C and C++
Decisions about Xamarin

Here are some stack decisions, common use cases and reviews by companies and developers who chose Xamarin in their tech stack.

Bhupendra Madhu
Web Developer at Ecombooks · | 8 upvotes · 513.1K views
Needs advice
on
FlutterFlutterReact NativeReact Native
and
XamarinXamarin

I want to learn cross-platform application frameworks like React Native, Flutter, Xamarin, or Ionic, and I'm a web developer. I can learn other programming languages as well. But I'm confused about what to learn, which framework is best, and which framework will last long as the application grows further into complexity.

See more
Needs advice
on
IonicIonicReact NativeReact Native
and
XamarinXamarin

I have an app developed in Ionic 1, i have to migrate ¿Wich Plataform do you recommendate to use Ionic, React Native or Xamarin?

See more
Needs advice
on
XamarinXamarin
and
XcodeXcode

Just starting with app programming. Between Xamarin & Xcode, which would you recommend for ease of learning and use?

See more
William Miller
Needs advice
on
PyQtPyQtReact NativeReact Native
and
XamarinXamarin

We are developing an AWS IoT app for large boats. The IoT devices have sensors all over the boat for engine oil pressure, position, water depth, fuel level, crew location, etc. When the boat has internet, we interact with AWS cloud using lambda and Amazon DynamoDB. When the boat is offshore, the captain and crew still need normal and emergency alerts and real-time sensor information. The crew might have an Android or IoS phone or a Windows or macOS PC to receive alerts and interact with sensors. We may use the AWS GreenGrasss edge computing solution and either MQTT or HTML for that function.

Question: We want to develop a cross-platform client to run on Windows, Mac, Android, IOS, and possibly Linux. We are primarily Python programmers, so PyQt or Kivy are options for us, but we have heard good things about React Native, Flutter, Xamarin, and others. We think an AWS Greengrass core on an RPI4 could communicate to the client with MQTT or a local webserver with a client web interface.

Any thoughts would be much appreciated.

See more
Andre Stemmett
Software Engineer at Microcare · | 4 upvotes · 77.4K views
Needs advice
on
DjangoDjango
and
PyCharmPyCharm

Hi there,

I have recently moved from C# and Xamarin to Python and IntelliJ IDEA. I finally have a grasp of python and want to start developing web applications with Django. Which IDE should I use?

Note: I have read that PyCharm is great but the community version only allows for basic web applications. Please help

See more

Xamarin's 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.
  • Visual Studio or Xamarin Studio- Create, build, debug, and deploy apps in Visual Studio. Or use Xamarin Studio, a fully-featured IDE that is built for mobile app development.
  • Native UI, Native Performance- Xamarin delivers high performance compiled code with full access to all the native APIs so you can create native apps with device-specific experiences.
  • Point and Click UI Design- Xamarin provides a world class Android UI designer. Use Apple Xcode UI designer to create interfaces and Storyboards that automatically sync with your Xamarin.iOS project.

Xamarin Alternatives & Comparisons

What are some alternatives to Xamarin?
React Native
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.
Ionic
Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.
Flutter
Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
NativeScript
NativeScript enables developers to build native apps for iOS, Android and Windows Universal while sharing the application code across the platforms. When building the application UI, developers use our libraries, which abstract the differences between the native platforms.
PhoneGap
PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.
See all alternatives

Xamarin's Followers
1522 developers follow Xamarin to keep up with related blogs and decisions.