Hacker News new | past | comments | ask | show | jobs | submit login

What’s the difference between this, Avalonia, and MAUI?



To supplement the other reply, a big difference is how they approach the cross platform UI.

Xamarin Forms/MAUI is effectively an abstraction layer on top of the Android UI Toolkit and CocoaTouch.

Uno is its own implementation of a UWP compatible UI that renders everything onto the screen using Skia.

You get the same affordances of cross platform .NET, C#, and XAML. Uno gives you pixel perfect cross platform UIs, but loses the native feel, which MAUI preserves, at the cost of writing more platform specific renderers.


I had no idea it also rendered components with Skia I’ll have to give it a go. I gave up C# on mobile for Flutter and I kind of miss C#. The Xamarin experience left a sour taste for me.


Thank you this helped a lot.


Not sure about Avalonia, but for Uno vs MAUI here is a previous comment of mine (in this context Xamarin and MAUI are identical):

Uno is sort of an alternative to Xamarin.Forms aimed at windows developers that aren't happy that Xamarin.Forms uses a non-standard XAML. Uno uses UWP XAML, which is preferred by these users.

The way I like to think of the two frameworks is that Uno is a cross-platform framework that aims to align systems to the Windows way of doing things, while Xamarin.Forms is more of a "do iOS/Android" in same codebase and just happens to also support windows. There is unique value props in each framework (e.g. Uno also targets WASM and Xamarin.Forms targets Samsung Tizen).

Here is a good high level of Uno: https://www.youtube.com/watch?v=fyo2BI4rn0g


Doesn't maui also support mac/linux? Do a lot of people use xaml? I would have thought you could write the ui's directly in C#.

edit: it looks like xaml is optional with the community toolkits https://devblogs.microsoft.com/dotnet/introducing-the-net-ma...


Youre right, platform support on MAUI is different than Xamarin so that part isnt necessarily accurate.

A large segment of the community uses XAML yeah. I think it just tends to be those that came to it through .net or those that came to it through native app dev. I prefer C#, and it seems MAUI has a better story around that with its partial focus on MVU style dev.


Maui does not (at present) offer Linux support. There's a community effort, but AFIAK it hasn't gotten a lot of steam yet.


TL;DR:

* Uno is a vendor-led Windows/WinUI inspired and based UI platform that was originally concieved as a way to port modern Windows Apps to other platforms. Since then, it's evolved a lot of different capabilities and paradigms, but ultimately is basically cross-plat WinUI with extensions. * Avalonia is a OSS platform concieved as WPF with some of the warts removed, and cross platform. It uses a lookless theming and drawing primites instead of native APIs/Controls to render it's UI. * Maui is a .NET/Msft-blessed platform that is basically a rebranding of Xamarin.Forms with some improvements and renewed investment. It also largely uses native APIs/controls, and has a contruction style that is kind of a mix between WPF and WinForms.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: