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 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 12, 2025:
.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. User attention is precious and modern apps need to do everything possible to keep users engaged. Popups can help in keeping users in the loop—this could be for important information, progress indicators, errors, task completions and more. Thankfully, .NET MAUI developers have lots of options for doing popups right, and Héctor Pérez wrote up a nice article—exploring multiple ways to create popups in .NET MAUI.
Popups can be a fun way to provide consistent and engaging UX, but often need custom code to pull off. .NET MAUI developers have it good with a few options to work with popups. Héctor starts with the basics of a .NET MAUI app with an UI that mimics online credit card payments—a progress indicator and completion notification would be perfect to show in a popup.
Héctor talks through how developers can easily render popups using three popular .NET MAUI libraries—Progress Telerik UI for .NET MAUI, .NET MAUI Community Toolkit and Mopups. Each library comes with its own strengths and customizations. .NET MAUI developers have choices to leverage popups for optimal user experience in cross-platform mobile/desktop apps.
It is the age of AI, and there is a huge opportunity for .NET developers to infuse apps with solutions powered by generative AI and large/small language models. Modern AI is also an opportunity to streamline and automate developer workflows for better productivity. One of the challenges with modern AI, however, is providing context to AI models and tooling for AI agents—the promise of Model Context Protocol (MCP) can help.
MCP an open-industry protocol that standardizes how applications provide context to AI Models/Agents—developers can think of it as a common language for information exchange between disparate systems. Developed by Anthropic, MCP aims to provide a standardized way to connect AI models/agents to different data sources, tools and non-public information. This provides deep contextual knowledge and bolsters confidence in performing tasks with customized tools.
The biggest benefit of MCP standardization is democratizing access to specialized tooling and grounding, through MCP servers to AI agents. There is already a wealth of developer inspiration with solid references, well-thought-out security considerations and curated collection of high quality MCP implementations.
The evolution of the .NET development stack and mature tooling ecosystem allows developers to create modern rich apps for various platforms—and a healthy ecosystem is powered by various libraries that enhance developer productivity. When it comes to making libraries available to others, DevOps plays a big role in smooth workflows, and Sweeky Satpathy/David Ortinau wrote up a post—packaging and publishing .NET MAUI libraries with GitHub Actions.
GitHub Actions is a powerful CI/CD platform that automates software development and deployment workflows directly within GitHub repositories. Developers get complete flexibility to control every aspect of the lifecycle. The article continues the journey of incorporating DevOps while building and publishing .NET MAUI apps/libraries. GitHub Actions can help define the end-to-end workflow. Developers have to consider several aspects before publishing .NET MAUI library NuGet packages—like package versioning, securely signing the package and distribution to NuGet.org or Azure DevOps internal feed.
The article dives into YAML setup that helps in each case, as well as real-world scenarios like storing/using Secret Values in GitHub Actions to handle sensitive information and creating Releases. GitHub Actions workflows can help build, pack and sign .NET NuGet packages for distribution.
While .NET MAUI is squarely meant for developers to build native mobile/desktop apps, armed with modern smart WebViews, .NET MAUI is more than capable of welcoming web content to native land. In fact, Blazor developers should feel empowered to bring web UI components, routing, styling and more to native cross-platform .NET MAUI apps, while gaining complete native platform API access. As Blazor developers bring their apps to native mobile/desktop, there needs to better understanding on how to collect information from client-side, and Jon Hilton wrote up an article—capturing user input with Blazor forms.
A common way to collect user inputs in web apps is the HTML form. While the basics work, developers have to jump through a few hoops around antiforgery token and form name. To reduce boilerplate code, Blazor brings a dedicated form component called EditForm. This should work the same way in .NET MAUI apps, with Blazor render modes not being impactful since client-server is all together in native apps.
Jon showcases the developer experience with easy-to-follow code samples that work around configuration roadblocks, while doing essentials like validating form data or reusing components across several forms. With help from Progress Telerik UI for Blazor, developers can just drop in a TelerikForm UI—this provides flexibility around model binding, wiring up configurations and UI customizations. And everything with Blazor forms for capturing user input also works in .NET MAUI apps—developers can share code between web/native apps.
AI promises a lot with developer productivity, but true value might be in getting around some of the shortcomings of traditional AI models. Agents bring context and automation through customized tools. Past generative features, AI agents have access to specialized trusted tools and can perform tasks for developers, with or without human interaction. These are early days for AI agentic workflows and everyone could benefit from a pulse check with the developer community—say hello to the State of AI Agents survey from the Progress Telerik team.
The survey is meant to provide a comprehensive view of Agents from a developer’s standpoint. Anyone can chime in with their thoughts and preferred tech stack, and see where others line up. Questions in the survey range from development stack of choice, deployment options and ethical considerations—a nice reference to see what the developer community is leaning toward. The State of AI Agents survey only takes five minutes and should provide comprehensive insights toward trends, challenges and opportunities in AI agent development.
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 Developer Advocacy Manager for Developer Tooling products. With a long developer background, he now spends much of his time advocating modern web/mobile/cloud development platforms on Microsoft/Telerik/Kendo UI technology stacks. His spare times call for travel, fast cars, cricket and culinary adventures with the family.