MAUI Avalonia Preview 1 - Avalonia UI

Announcing the first release of Avalonia MAUI

I wish they support Linux wholeheartedly, a lot of toolkits and GUI frameworks do it by half-assing things, mostly because Wayland is difficult to understand.

In Wayland you have multiple ways to render windows, not just the XDG top level window. It works via surfaces, and here is a list I've discovered so far:

- XDG Top Level Window
- Child Window
- Popup Surface
- Layer surface (like task-bars, shell overlays)
- Subsurface (region in another surface)
- IME Panel Surface (surface that follows text cursor)

There probably is others too.

It is diffifcult to find high-level toolkits that support all of the above.

Not to mention that there's no clear documentation for this anywhere. A while ago I was attempting to debug some Wayland-specific issues with a graphics library, it turns out the issue was that the little documentation there was, was wrong about what is and isn't nullable.

I found https://wayland.app/protocols/ very helpful so far.

That and studying smithay code.

Wayland Protocol Documentation | Wayland Explorer

A better way to read Wayland documentation

That was the documentation with the incorrect nullability I was referencing.

For everyone interested in Avalonia's Linux / Wayland strategy:

https://avaloniaui.net/blog/bringing-wayland-support-to-aval...

Bringing Wayland Support to Avalonia - Avalonia UI

A Pragmatic Approach to Linux's Display Server Future

We’re actively working on Wayland support for Avalonia 12. While we considered dual licensing it, we ultimately decided to keep things simple and make it MIT licensed.

The rewrite from Xamarin.Forms into MAUI, has given a bad taste to many in the community, and kudos to Avalonia to make it happen on GNU/Linux.

By the way on macOS MAUI uses Catalyst as backend, not native macOS APIs.

Also it is kind of interesting that Miguel de Icaza, nowadays completely switched into Swift ecosystem, and is the responsible for making game development on iPad with Godot a reality. Or porting old .NET ideas of his into Swift.

Accessibility bridging between .NET MAUI and Avalonia is currently limited.

Nowhere near production ready, got it.

Almost nobody needs accessibility; let's be realistic, it's obviously not a priority. The priority is to put this out the door (MVP style).
this was down voted but its correct. even if as a human j disagree and it sounds mean, this is how people think in general..too bad, but too true. accessibility will come after 'launch'.
If they mean "only a small subset of your users need accessibility support" this might be true, but I haven't worked for a organization selling software in the past 20+ years that hasn't needed to provide support, and those orgs are the audience for a .net cross-platform UI solution, so in that case they are wrong; almost everyone "needs accessibility support".

provide support on a product and accessibility are really different things.

accessibility is like implementing braille and things for deaf and colourblind etc.

support is resetting password and helping with accounts etc.

so one is to get a certain category of users to be able to access your site in the general sense. the other (support) is about helping people who already can access your site or service.

Unfortunately too many developers share your perspective. I'd be surprised if anyone building commercial software would move ahead without accessibility support though because, 1. it's required by law in many situations, and 2. it makes good business sense.

This is the first preview release. It’s targeting a preview of .NET 11, which should help you understand that it’s not intended to be used in production right now.

We don’t expect this to graduate from a preview until November. There’s plenty of time to sort out Accessibility.

Nice, I love MAUI but hate that it has no support for Linux. The only option I have is Avalonia and Photino. I love .NET but when I want to make a GUI I reach for other languages because Microsoft despite reinventing their .NET GUI stack every few years, they never add Linux support. Personally I prefer to use their built-in stuff as much as possible.

> Personally I prefer to use their built-in stuff as much as possible.

Why? Avalonia is a spiritual successor to WPF but FOSS and cross-platform.

I’ve been using Claude to build native versions of a couple of apps and what was once unthinkable (maintaining multiple code bases) is now fairly trivial. And Electron/Tauri implementations are high quality.

I’m not sure platforms like Maui are necessary anymore.

I did note the comment “if you don’t want Liquid Glass” as a direct response to GenAI native development.

Time will tell.