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 (.NET MAUI)—the evolution of modern .NET cross-platform developer experience. Going forward, developers will be empowered with the .NET MAUI technology stack and stable tooling to build native cross-platform apps for mobile/desktop from single shared codebase.
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 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 August 21, 2023:
GitHub Copilot is an AI-powered pair programmer extension for Visual Studio that provides developers with context-aware code completions, suggestions and even entire code snippets. This powerful tool helps developers write code more efficiently, reduce the time spent on repetitive tasks and minimize errors.
Turns out, GitHub Copilot has much to offer for .NET MAUI developers and James Montemagno produced a video—building .NET MAUI apps faster with GitHub Copilot in Visual Studio 2022.
GitHub Copilot works by utilizing advanced machine learning models trained on a vast dataset of publicly available code from GitHub repositories. The beauty of GitHub Copilot, however, is how much the AI can be aware of current context and local code.
James started from his classic MonkeyFinder .NET MAUI app codebase and started bringing in help from GitHub Copilot Visual Studio Extension. Need to check network connectivity before making a service call from .NET MAUI app? GitHub Copilot can help with specific code based on current context and APIs.
For developers new to complex codebase, GitHub Copilot really shines with conversational chat—developers can ask questions and receive answers that explain how things work in the given project code. Developers can ask GitHub Copilot Chat to help with specific actionable items—out comes context-aware code that can provide a great starting point for customizations.
The power of AI and advanced machine learning is here to help .NET MAUI developers be more productive—cheers to that.
While .NET MAUI provides a wonderful foundation for modern .NET cross-platform development, serious developers know the need to augment the UI stack—no point trying to recreate the wheel when engineering is expensive. Telerik UI for .NET MAUI can help—the most comprehensive UI component library for polished performant UI controls that work seamlessly across mobile and desktop.
One of the most popular yet complex UI components in Telerik UI for .NET MAUI is the mighty Calendar and Rossitza Fakalieva has written up the definitive guide—exploring the easy-to-use, feature-rich and customizable Telerik Calendar UI for .NET MAUI.
Telerik UI takes pride in providing seamless migration from Xamarin to .NET MAUI for developers, but the new Calendar UI has breaking API changes. It's a brand-new UI component that is engineered to work seamlessly across iOS/Android and Windows/macOS.
The Calendar component offers four built-in display modes with easy navigation, controlled by the DisplayMode property—they are Month, Year, Decade and Century. Developers have the option of providing navigation guardrails with MinDate/MaxDate and disallow user interaction on some date cells using the BlackOutDates collection.
Date selections can be varied on the Calendar—single, multiple, range or none. The Calendar offers wide styling APIs—everything from headers to individual date cells can be customized with Templates.
With easy localization and globalization, the Telerik Calendar UI offers a one-stop solution for anyone looking for a native cross-platform calendar UI—thanks, Rossi, for the detailed guide.
The next milestone in the evolution of .NET is coming up soon—.NET 8 has been cooking and is scheduled to hit prime time in November 2023.
Along with the latest .NET 8 Preview 7 release come hot new bits for .NET cross-platform development—.NET MAUI for .NET 8 Preview 7 is now out. Developers wanting to tinker with latest .NET MAUI bits can enjoy all the enhancements coming with .NET 8 and Daniel Hindrikes produced a video—getting started with .NET 8 .NET MAUI MAUI Preview on Visual Studio for Mac.
For developers on Windows, getting started with .NET MAUI for .NET 8 has been easy—the latest Visual Studio Preview bits include the .NET MAUI workloads. But why should developers on macOS miss out on the fun?
Daniel points out that Visual Studio for Mac now includes options to get .NET 8 SDK from Preferences—developers can also install .NET 8 bits with direct download. A quick command line install of latest .NET MAUI workload, and voila—VS for Mac is now ready for .NET MAUI bits running on .NET 8.
Based on installed runtimes, developers have the option of running .NET MAUI on top of .NET 6/7/8—the latest enhancements being on .NET 8. If running on .NET 8, Daneil points out some of the NuGet package dependencies—this should make it easy to version .NET MAUI bits going forward.
.NET 8 Release Candidate bits are right around the corner—now may be a great time for .NET MAUI developers to tinker with what's coming next.
NET MAUI packs a lot as a developer framework—a unified stack with stable tooling to build native cross-platform apps for mobile/desktop form factors. Real world apps, however, demand a lot from developers—UI needs, boilerplate code and platform abstractions.
The .NET MAUI Community Toolkit is here to help—a collection of reusable elements for .NET MAUI, including animations, behaviors, converters, effects, helpers and more. The Toolkit DockLayout can be a handy component to design the right UI and Leomaris Reyes wrote up an article—exploring DockLayout from .NET MAUI Community Toolkit.
Leomaris starts out with the benefits of the .NET MAUI Community Toolkit and how the DockLayout provides developers more flexibility, on top of the default .NET MAUI layouts. Quite simply, the DockLayout within the .NET MAUI Community Toolkit is a layout that enables UI components to be docked to the top, left, right, or bottom of a given view within a container control.
An image is worth a thousand words, and Leomaris explains the DockLayout positioning with a clear visual along with corresponding code properties. For Left/Right docking positions, developers need to specify a WidthRequest, while Top/Bottom docking demands a HeightRequest setting—the DockLayout acts as a container to keep the pertinent views pinned as per relative location.
Leomaris goes on to explore a few other properties of the DockLayout—overall, a solid addition from the .NET MAUI Community Toolkit that helps developers build and position UI as desired.
.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. There is much to be excited about .NET MAUI—framework maturity, stable tooling and welcoming web developers.
There also seems to be a sense of calmness and maturity as .NET MAUI gets ready for .NET 8—issues getting fixed and developer productivity being improved. Why not celebrate with a long stream on .NET MAUI goodness—welcome to paddle boarding in MAUI.
Some of the folks who care about .NET MAUI the most will come together for a community-driven Twitch long stream—mark your calendars for Friday, August 25 from 12:00-4:00 PM EST.
The goal is simple—to share knowledge, show off code/tooling, engage and learn together. Topics include everything relevant to the .NET MAUI ecosystem—framework, Toolkits, inspiring UI, gaming, publishing and open source etiquettes.
With passionate speakers and a busy agenda, the day promises to be full of fun and learning, in addition to raffle prizes and raising charitable donations for supporting Maui wildfire recovery.
This is by and for the .NET MAUI developer community—come hang.
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.