Welcome to the Sands of MAUI—newsletter-style issues dedicated to bringing together 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.
Most .NET developers are excited with .NET Multi-platform App UI (MAUI)—the evolution of modern .NET cross-platform developer experience. Going forward, developers should have much more confidence in the technology stack and tools as .NET MAUI empowers native cross-platform solutions on both mobile and desktop.
While it may take a long flight to reach the sands of MAUI island, developer excitement around .NET MAUI is quite palpable in all the shared content. Like the grains of sand, every piece of news/article/documentation/video/tutorial/livestream contributes towards developer knowledge 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 November 7, 2022:
Maddy Montaquila and David Ortinau hosted the monthly .NET MAUI Community Standup for November—the usual place for .NET MAUI developers to catch up on all the news and get excited with platform updates.
Maddy covered prominent .NET MAUI news from the community and had developers looking forward to .NET Conf. David provided framework updates, pointed to exciting libraries and showcased a bunch of awesome UI work that developers are working on with .NET MAUI.
It was then time for special guest Michael Cummings—he has been the force behind a lot of the Hot Reload tooling that .NET MAUI developers have grown to love. Michael started describing the various type of .NET Hot Reloads—XAML Hot Reload, Blazor/CSS Hot Reload and C# Hot Reload.
Next up was a behind-the-scenes engineering look at how .NET Hot Reload technology works—the MetadataUpdateHandler powers it all and developers can leverage it to make C# Hot Reload work great in .NET MAUI apps.
.NET MAUI is the next-generation cross-platform .NET strategy to target mobile/desktop apps from a single shared codebase. While the evolution from Xamarin means mobile landscape is covered, .NET MAUI has seen a lot of platform enhancements to support desktop apps. With .NET 7 support, .NET MAUI caters to desktop user experiences across the board with mouse/keyboard friendly features and encourages app modernization strategies.
Leomaris Reyes wrote up an article on a key new desktop feature—adding context menus to desktop apps.
Desktop app users expect additional functionality upon right click and .NET MAUI enables this now. Context menus are floating menus which can be attached to any visual element in .NET MAUI apps—it's completely customizable and can be dynamic. Leomaris starts out talking about the visual structure of Context Menus, before diving into how to render hierarchical menus with MenuFlyout, MenuFlyoutItem and MenuFlyoutSubItem. Contextual context menus as needed in all desktop apps—done and done with latest .NET MAUI running on .NET 7.
With .NET 7, .NET MAUI is all grown up—tooling is mature and platform is feature-rich for building modern cross-platform mobile/desktop apps. If developers were on the fringe about diving into .NET MAUI, now may be as good a time as any to get their feet wet with the latest .NET cross-platform stack running on the latest runtimes. Matt Goldman can help, along with folks at SSW TV—makers of tech training videos for developers by developers.
Hosted by Luke Cook, the latest SSW TV interview video is to answer the pivotal question, what is .NET MAUI? Speaking from experience, Matt Goldman provides a wonderfully lucid history lesson in how .NET evolved over time and the major technology milestones, like Mono, Xamarin, .NET Core, Blazor and now .NET MAUI.
Matt goes on the describe the .NET MAUI technology architecture, and how it enables developers to have a true single shared codebase towards cross-platform mobile/desktop apps with .NET MAUI. This is a great introduction to .NET MAUI and sounds like there is a whole series of videos coming up to teach developers all about .NET MAUI—cheers to that.
Backed by Google, Firebase is an app development platform that helps developers build and grow apps. At the heart of Firebase is Google Analytics—an unlimited analytics solution available at no charge. Analytics integrates across Firebase features and provides developers with reporting for up to 500 distinct events that can be defined using the Firebase SDK. The good news is all of this works with .NET MAUI apps and Victor Hugo Garcia is here to help show how with a detailed article—on integrating Firebase Analytics in .NET MAUI apps.
Victor starts out how developers should create a project in Firebase console, and bring in the requisite NuGet packages into .NET MAUI apps. Next up would be enabling Google Analytics in the .NET MAUI—developers need to add GoogleService-Info.plist for iOS and google-services.json for Android. The last step is to initialize the Firebase services in MauiProgram.cs file with some configuration—developers can then rebuild and rerun the app. And voila—analytics start showing up in the Firebase console a couple of minutes after running the app.
Victor also pointed out how developers can leverage platform-specific APIs for Logging services with Firebase—.NET MAUI's built-in dependency injection can help. Bottomline, Firebase can serve as the perfect accompaniment to successfully orchestrated .NET MAUI apps—more power to developers.
The de facto virtual conference to learn about all things new with .NET is coming up—.NET Conf happens November 8-10 this year.
Developers can expect .NET 7 to be releases—the next evolution of the .NET stack, with focus on .NET MAUI, Containerization, Cloud Native, ARM 64, Performance optimization and so much more. This year's .NET Conf sports a new website and offers awesome depth of .NET content to all developers. The three day .NET Conf has a solid agenda—Day one is all about big .NET announcements and Day 2/3 offer deep dive content by speakers from all around the world.
What's in .NET Conf for .NET MAUI developers? In short, a lot—developers will get to see some of the latest and greatest developments with .NET MAUI. Day one promises the big topics to look forward to—State of .NET MAUI, Desktop apps with .NET MAUI, Performance improvements with .NET 7 and Blazor Hybrid.
There is much more content to follow on subsequent days—upgrade paths from Xamarin to .NET MAUI, MMVM Toolkit, Platform code implementations, .NET MAUI Community Toolkit and more.
Bottom line, if you are a .NET MAUI developer, you should tune into or catch up the sessions from .NET Conf.
That's it for now.
We'll see you next week with more awesome content relevant to .NET MAUI.
Cheers, developers!
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.