Our great sponsors
-
Introducing .NET Multi-platform App UI (MAUI)
.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
-
Avalonia
Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The most popular .NET Foundation community project.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Uno Platform
Build Mobile, Desktop and WebAssembly apps with C# and XAML. Today. Open source and professionally supported.
-
ASP.NET Core
ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.
-
net6-mobile-samples
Discontinued .NET 6 preview samples. Not for production use. The main branch tracks the current preview release, and develop tracks the upcoming preview.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
hydro-sdk
Author Flutter experiences in Typescript. No native bridge, no V8. Just Dart. From runtime to virtual machine.
Will .NET MAUI allow deployment of one code base across iPhone, Android, Windows Desktop, macOS Desktop and Linux?
Yes, checkout this chart in the README to see the supported platforms.
https://github.com/dotnet/maui/wiki/FAQs#will-net-maui-allow...
Lately I've been using AvaloniaUI ( https://github.com/AvaloniaUI/Avalonia ) for all new projects. For most intents and purposes it is much easier to make single UI codebase work across platforms when behavior and look of components does not depend on quirks of native controls.
How likely will it be that F# is supported out of the box?
I understand that this is a push for mobile but hopefully a linux support will be considered.
https://github.com/jsuarezruiz/forms-gtk-progress/issues/31
FWIW, I'm in the same bucket and I'm leaning toward Blazor. There's a big push in .NET 6 to deliver "Blazor Desktop", which is essentially more native wrappers around Blazor Server: https://github.com/dotnet/aspnetcore/issues/27217
Might not fit your needs (it is bringing web technology to native apps, much like Electron) but I think it has more of a future than XAML/MAUI. And the underlying technologies (Razor, Blazor Server) have been around for a while so you can get started now even if all the pieces aren't quite there.
You can try to use Comet [1] today if you don't want to wait for MAUI
[1] - https://github.com/dotnet/Comet
https://github.com/dotnet/core/blob/main/release-notes/5.0/5...
And it does not specifically require any paid extended support contract from Microsoft to actually install and run.
> Plus you can't share UI code between Android and iOS. You still need to build the UI's natively with no code reuse.
Utterly false - Xamarin Forms is totally cross-platform UI; you're probably mistaking it for Xamarin Native, which is used as a target renderer for each platform. Look at this sample project: https://github.com/xamarin/xamarin-forms-samples/tree/master...
The .iOS and .Android project folders target each platform respectively, with a single project shared between them that defines UI that is rendered onto each platform. You claim to have experience with using it, but obviously haven't done anything even as simple as a HelloWorld.
Related posts
- How exactly does Unity integrate with IDEs - how does the editor build work?
- Is there anything inherently wrong with .net applications for self-hosting? (especially in terms of privacy)
- Mono: A Simple UI/Web/Desktop/Mobile Framework Written in Nim
- How do I get the target framework assemblies for version 4.6.2 (Or any version) on Linux?
- never ending