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 looking forward to .NET Multi-platform App UI (MAUI)—the evolution of Xamarin.Forms with .NET 6. Going forward, developers should have much more confidence in the technology stack and tools as .NET MAUI empowers native cross-platform solutions on mobile and desktop.
While it is a long flight until we reach the sands of MAUI, developer excitement is palpable in all the news/content as we tinker and prepare for .NET MAUI. Like the grains of sand, every piece of news/article/video/tutorial/stream contributes towards developer knowledge and we grow a community/ecosystem willing to learn and 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 2, 2022:
Rejoice—another release of .NET MAUI is out. Hot off the heels of the Release Candidate (RC) 1 release, RC2 is now out— David Ortinau wrote up the announcement post. Developers can get to .NET MAUI RC2 by upgrading to Visual Studio 2022 17.2 Preview 5 on Windows or by grabbing the appropriate Workload updates through command line on MacOS. There might be one more RC release—we're inching that much closer to .NET MAUI General Availability (GA).
.NET MAUI RC2 also carries with it a 'Go-Live' license—developers can now write production apps and get support from Microsoft, if needed. The big news this release was broadening .NET MAUI's platform reach in addition to iOS/Android/Windows/Mac—say hello to Tizen. Tizen as an operating system powers millions of Samsung devices, like TVs, Refrigerators, smart watches and more. Tizen.NET has long enabled .NET applications to run on Tizen—Xamarin.Forms had been welcome, and now .NET MAUI is as well.
.NET MAUI project templates now include scaffolding for Tizen support, while the workload dependencies are distributed through a separate installation experience maintained by Tizen. The official Tizen Emulator supporting .NET 6 is coming soon—but it is so good to see existing .NET MAUI apps run on Tizen.
David also took the time to mention how .NET MAUI caters to specific platforms—all the native API access is now built in. Further, while .NET MAUI will render native UI on each platform, developers can easily customize things per platform, if desired. With platform-specific folders, file name conventions for .NET MAUI Handlers or Conditional Compilations, developers have multiple ways to cater to specific platforms and customize UI to their hearts content. Cheers to .NET MAUI for providing this flexibility—good times ahead with GA coming up.
When talking .NET MAUI, we may often make assumptions about our audience, like—.NET developer experience, knowing the history of Xamarin, understanding the evolution to .NET MAUI and knowing the .NET ecosystem. This may be a disservice for those who do not share similar backgrounds or are new to the software industry—we need to lower the barrier to entry and be more inviting to everyone. The pivotal question to answer is—what exactly is .NET MAUI and what does it mean for cross-platform app development?
Though formal presentations are not the norm on YouTube, pictures say a thousand words when going back to the basics. James starts with an introduction to the vast .NET ecosystem and a walk down history of client app development with .NET.
While Xamarin and Xamarin.Forms made it easy to take .NET code cross-platform, the evolution to .NET MAUI utilizes the opportunity to address developer pain points through better app architecture, framework features and tooling. The .NET MAUI stack is rebuilt from the ground up to reach mobile/desktop platforms from truly single codebase and does not compromise on platform API access or device customizations.
Performance is kept a top priority in .NET MAUI and tooling paves the way for tighter developer inner loops. James also talks about modern web development and why Blazor is so enticing for .NET developers—all the Blazor web goodness is now welcome on native mobile/desktop apps with Blazor Hybrid running on top of .NET MAUI.
.NET MAUI is the next generation of .NET cross-platform app development framework reaching mobile/desktop platforms from a single codebase. While there is a lot of love out of the box, seasoned developers know cross-platform development is not easy—there are traps to write boilerplate code repeatedly, not adhering to standards, writing custom UI that is not shared and several other roadblocks towards shipping apps for enterprises or to app stores. The .NET MAUI Community Toolkit can help provide more ammunition to developers and Gerald Versluis made a great overview video.
Gerald started with some wonderful history—.NET MAUI and the present day developer ecosystem was not created out of nothing. Xamarin, Xamarin.Forms and the Xamarin Community Toolkit have long enabled .NET developers to be productive towards building cross-platform native apps. .NET MAUI evolves to the next level broadening platform reach & enabling better code sharing. And the .NET MAUI Community Toolkit is a community-created library that contains .NET MAUI Extensions, Converters, UI/UX controls and Behaviors to help make life as a .NET MAUI developer even easier.
Gerald showed off the .NET MAUI Community Toolkit GitHub repository and all that's new—it is heartwarming to see the community drive the library forward with contributions. The .NET MAUI Community Toolkit Sample app shows off many of the Toolkit's features and serves as a wonderful showcase of clean, well-written code.
Gerald talked through how developers can get started with the .NET MAUI Community Toolkit using NuGet package and how to build the visual tree in a more fluent way with pure C# using the C# Markup Extensions. Developers have choices and extra help when building .NET MAUI apps—just no more excuses for .NET MAUI developers to not be productive.
Modern cross-platform development with .NET now reaches all mobile and desktop platforms. As .NET MAUI inches towards General Availability (GA), there is much developer enthusiasm and tooling/ecosystem is ramping up fast. What better way to celebrate than getting some of the most hardcore .NET MAUI aficionados to share their passion.
Just like in snorkeling, the goal would be to look under the surface of .NET MAUI, see what's cooking and look forward to more developer goodness towards GA and beyond. On the hook are .NET MAUI team members and some awesome community speakers. Should be a wonderfully interactive fun day of knowledge sharing around .NET MAUI—you should come.
Want to explore the latest innovations in code and application development across most Microsoft technologies? Microsoft Build is the place to be—the premier future-facing developer conference. Microsoft Build is all virtual and scheduled for May 24–26 this year.
Developers get to choose focus areas and dive deeper with peers and experts from around the world. Key innovation areas include cloud solutions, Windows experiences, collaborative apps and of course, expect news for .NET and .NET MAUI.
Microsoft Build promises awesome speakers showcasing innovations and intimate learning experiences with regional spotlights, connection zone and individual consultations. Register and join the fun—from the comfort of your desk or couch.
That's it for now.
We'll see you next week with more awesome content relevant to .NET MAUI.
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.
Subscribe to be the first to get our expert-written articles and tutorials for developers!