Telerik blogs

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 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 March 13, 2023:

.NET MAUI Survivalist Guide

.NET Frontend Day brought together passionate speakers and engaged .NET developers for a day of fun, with in-person audiences in Stockholm and live-streamed online.

David Ortinau did an awesome session on all things cross-platform development with modern .NET—a survivalist's guide to .NET MAUI. For developers coming in new or even for seasoned developers, this was a state of the union talk on .NET MAUI.

David started out with momentum in the .NET/.NET MAUI ecosystem—developer adoption numbers are impressive. After sharing a few success stories, it was time to jump into the details of what matters most to .NET MAUI developers—workloads, layouts, control customization, tooling updates and upgrade story from Xamarin. While there is plenty of visual tooling, David dropped some gems when it came to useful CLI commands.

While more developers are seeing success with automated .NET upgrade assistant tool to move from Xamarin to .NET MAUI land, many are sticking to starting a new .NET MAUI project and moving things over manually—should be a choice depending on project complexity. David dove into some of the core benefits of .NET MAUI—single project system, shared resources, flexible layouts, Handlers, conditional compiler directives and more.

An engaged Q/A session showed increased developer interest—the state of .NET MAUI is solid and the developer story will only get better.

.NET MAUI Project Structure

For all the talk around modern cross-platform development with .NET, it can sometimes be forgotten that .NET MAUI is still relatively new. A lot of developers are coming in fresh into the ecosystem and it is important for beginners to understand some core fundamentals. Javier Suárez is here to help with a whole series on .NET MAUI core concepts and there is a wonderful video on a key feature—.NET MAUI project structure.

One of the core benefits of .NET MAUI is a true shared project—developers get to target iOS/Android/Windows/macOS from a single codebase. Javier starts with the basics and breaks down all the key components that make up the .NET MAUI single project system. Some of the big benefits for developers are truly shared application resources—like images, icons, fonts, splash screens, styles and more.

Javier then dives into application manifests, platform APIs and the single cross-platform app entry point. Javier goes on to demonstrate all the concepts with a demo that's easy to follow—this a great video for any developers starting out with .NET MAUI.

MauiReactor for .NET MAUI

The health of an ecosystem is often gauged by innovations happening around it and smart developers building cool libraries. Adolfo Marinucci maintains MauiReactor—a component-based UI Library built on top of .NET MAUI controls and inspired by ReactJs/Flutter.

James Montemagno recently hosted Adolfo on a On .NET show to talk things over—all about MauiReactor for .NET MAUI.

After the initial bonding over Italy, the duo got down to business, beginning with the origins of MauiReactor—it is the successor of ReactorUI for Xamarin.Forms. MauiReactor today is a polished library allowing developers to embrace Flutter/React/Swift style Model View Update (MVU) pattern with C# and render native .NET MAUI UI.

Adolfo showed off how developers can get started with MauiReactor and be productive with MauiReactor Hot Reload. The selling points of MauiReactor are support for rich graphics, stunning animations, wrapping .NET MAUI UI and allowing for MVU-style fluent definitions of visual tree—more choices is a good thing for .NET developers.

BlazorBindings in .NET MAUI

Blazor and .NET MAUI are almost made for each other—they work on top of a common modern .NET runtime and allow developers to share code between web/native apps. .NET MAUI welcomes web content to mobile/desktop apps through Blazor Hybrid and a modern WebView, but looks like there is a new way for developers to re-use Blazor expertise.

As usual, Gerald Versluis made an awesome video about it—build .NET MAUI apps using Blazor Syntax with BlazorBindings.Maui.

Maui Blazor Bindings enable developers to build .NET MAUI apps using familiar web programming patterns, but render native UI. Developers get to reuse Blazor component model and Razor syntax to define native UI components and application behavior—all without using XAML. Gerald starts with the basics, brings in BlazorBindings.Maui Templates and walks developers through on how to get started with new projects. A little exploration of the project reveals the real magic—familiar Blazor component model and Razor pages can now drive native .NET MAUI UI.

Gerald plays around implementing simple navigation with dependency injection and explores the promise of BlazorBindings.Maui—yet another way developers who love Blazor can now feel welcome towards building native mobile/desktop apps.

Playlist Builder with .NET MAUI

As developers, nothing beats the learning experience of seeing another expert developer build out a real world complex app right in front of our eyes. Daniel Hindrikes is aiming to do just that—build a real .NET MAUI app from scratch.

In what promises to be an epic series, Daniel is looking to build a Spotify-like app and the third part is up—building a .NET MAUI Playlist Builder app from scratch.

After targeting Android for the first two episodes, Daniel switches to testing on iOS and picks up from where he left off. What's a Playlist Builder app without an audacious move—why not use Spotify APIs?

Daniel builds out a service that interacts with Spotify, manages/refreshes authentication tokens and builds out the UI for users to search for artists/albums. Along the way, developers get a glimpse of how real .NET MAUI apps are built—Daniel showcases use of CollectionView, Converters, Navigation and Gesture recognizers. Awesome work thus far Daniel—plenty of inspiration for fellow .NET MAUI developers.

That's it for now.

We'll see you next week with more awesome content relevant to .NET MAUI.

Cheers, developers!

About the Author

Sam Basu

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.

Related Posts


Comments are disabled in preview mode.