Welcome to the Sands of MAUI—newsletter-style issues dedicated to bringing together the latest .NET MAUI content relevant to developers.
A particle of sand—tiny and innocuous. But put a lot of sand particles together and we have something big—a force to reckon with. It is the smallest grains of sand that often add up to form massive beaches, dunes and deserts.
.NET developers are excited with the reality of .NET Multi-platform App UI (.NET MAUI)—the evolution of modern .NET cross-platform developer technology stack. With stable tooling and a rich ecosystem, .NET MAUI empowers developers to build native cross-platform apps for mobile/desktop from single shared codebase, while inviting web technologies in the mix.
While it may take a long flight to reach the sands of MAUI island, developer excitement around .NET MAUI is quite palpable with all the created content. Like the grains of sand, every piece of news/article/documentation/video/tutorial/livestream contributes toward developer experiences in .NET MAUI and we grow a community/ecosystem willing to learn & help.
Sands of MAUI is a humble attempt to collect all the .NET MAUI awesomeness in one place. Here’s what is noteworthy for the week of May 20, 2024:
.NET MAUI is built to enable .NET developers to create cross-platform apps for Android, iOS, macOS and Windows, with deep native integrations, platform-native UI and hybrid experiences that extend the reach of Blazor/JS web UI technologies. While modern developers have a few choices on how to build cross-platform apps, the promise of .NET MAUI is undeniable, and David Ortinau produced a video making the case—favorite benefits of .NET MAUI over other development stacks.
The most compelling reason for developers using Microsoft technologies to rely on .NET MAUI is the fact that it is part of .NET—developers get to leverage the familiarity of .NET, XAML, C# and Visual Studio tooling. Developers on the .NET stack have decades of historical experience to fall back on and years of investments toward building a rich ecosystem that makes developers productive—all of that is usable for .NET MAUI development.
David makes the point that .NET MAUI developers can choose the UI stack for their cross-platform apps—go native UI with XAML/C#, go pixel-perfect drawn UI with SkiaSharp/Maui.Graphics or bring in web goodness through Blazor/Angular/React. With modern .NET, tooling for .NET MAUI development is stable across development frameworks, and developers have wide platform reach from truly shared codebase—all signs point toward a bright future with .NET MAUI.
.NET MAUI is the evolution of modern .NET cross-platform development stack, allowing developers to reach mobile and desktop form factors from single shared codebase. There is no denying, however, the intrinsic complexity of cross-platform development stacks like .NET MAUI—there is a lot going on with underlying runtimes and platform dependencies. Leomaris Reyes is here to help .NET MAUI developers get past some common roadblocks and wrote up a wonderful article—troubleshooting 6 known issues in .NET MAUI development.
Be it an experienced .NET MAUI developer or simply taking first steps in cross-platform development, roadblocks are common—developers need not struggle in silos though. There is a lot of help from the .NET MAUI developer ecosystem and it is quite likely that someone else has resolved similar roadblocks.
Leomaris picks on some common pitfalls for modern cross-platform development—mismatched runtimes, missing SDKs, fully qualified namespaces, unable to locate XCode or duplicate images in app packages. For each of the roadblocks, Leomaris provides a nice explanation and a solution that is clearly understandable. There are good lessons here for .NET MAUI developers—when stuck, take a deep breath before looking around and finding solutions that work. Upwards and onwards with modern cross-platform development with .NET.
.NET MAUI is the evolution of modern .NET cross-platform development stack, allowing developers to reach mobile and desktop form factors from a single shared codebase. With increased stability and a rich ecosystem, there are lots more developers building cross-platform apps with .NET MAUI—many seeking consistent building experiences from Windows/macOS/Linux developer machines. The answer for consistent .NET MAUI developer experiences is likely Visual Studio Code, and Maddy Montaquila dropped a hint recently—.NET MAUI development with VS Code is about to get a lot better.
Modern developers often care about the speed of the developer inner loop—how quickly can code be modified in app UI/logic and be able to see the affected changes in a running app. This is called Hot Reload in the .NET MAUI world, and developers using Visual Studio IDE on Windows have had Hot Reload for XAML/C# changes for quite some time. Hot Reload is a wonderful productivity boost, but actually quite the engineering challenge to pull off.
Hot Reload for VS Code has been in the works, and Maddy indicated with a sample GIF that the .NET MAUI developer experience on VS Code is about to get whole lot better. Developers building .NET MAUI cross-platform apps in VS Code will soon be able to see XAML/C# changes reflected in device simulators without restarting running apps—developer productivity for the win.
Visual Studio Code is the uber-popular lightweight code editor that works seamlessly across Windows/macOS/Linux. While Visual Studio continues to be the rich IDE on Windows, VS Code represents the engineering consolidation of developer tooling across platforms. The lightweight editor brings a rich Extensions ecosystem and provides consistency of developer experiences. Marco Goertz hinted that .NET MAUI developer productivity in VS Code is about to get a big boost—XAML IntelliSense support is now out on pre-release.
XAML has had a long developer history as a UI visual tree markup language and continues to be the dominant way .NET MAUI developers build their cross-platform UI. With support for mobile and desktop form factors, XAML offers .NET MAUI developers the much needed UI flexibility and a rich tooling ecosystem around XAML in Visual Studio helps with developer productivity.
There is no denying, however, that XAML can get a little verbose, and .NET MAUI developers using VS Code have been lacking proper XAML IntelliSense support. While those using GitHub Copilot can get some XAML completion help, Marco has great news with true XAML IntelliSense now being built into VS Code. The Preview build of XAML IntelliSense in VS Code is out, but requires pre-release bits of C# and .NET MAUI VS Code Extensions. From property value completions, visual state management, animations and more, XAML IntelliSense being built into VS Code is very good news for .NET MAUI developers—kudos for the engineering work.
It is the age of artificial intelligence. AI is slowly changing the way we live and work, and AI’s popularity is driving adoption in enterprise and consumer apps. Microsoft’s next big developer conference with AI focus is coming up next week—Microsoft Build is happening in Seattle and online May 21–23, 2024.
AI presents a huge opportunity for .NET developers to infuse apps with solutions powered by Generative AI and Large Language Models (LLMs). Microsoft Build is a great opportunity to dive deep into the latest advancements with AI and uncovering ways developers can leverage the power of AI into their workflows. Modern .NET makes it easy to infuse smartness in apps, and developers have plenty of inspiration and tools to explore AI integration from .NET apps.
Aside from AI advancements, there will be sessions on .NET productivity, .NET MAUI, .NET Aspire, desktop development and much more—the session catalog is full of inspiration. Microsoft Build is a great conference to connect with developers globally and grow skills in topics like Generative AI, building Copilots, modern secure applications, cloud native platforms and more—let’s tune into Build online or in person in Seattle. Cheers to learning.
That’s it for now.
We’ll see you next week with more awesome content relevant to .NET MAUI.
Cheers, developers!
Use a component library in sync with .NET MAUI’s release cadence. Try Telerik UI for .NET MAUI for free.
Sam Basu is a technologist, author, speaker, Microsoft MVP, gadget-lover and Progress Developer Advocate for Telerik products. With a long developer background, he now spends much of his time advocating modern web/mobile/cloud development platforms on Microsoft/Telerik technology stacks. His spare times call for travel, fast cars, cricket and culinary adventures with the family. You can find him on the internet.