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 February 13, 2023:
New to developing apps with .NET MAUI and want to learn some quick tricks? While documentation is always the source of truth, developers may miss real-world nuances—the 'how do I do this?' type of knowledge. Leomaris Reyes is looking to make learning fun with short .NET MAUI learning challenges—the third challenge is all about the DateTimePicker in Telerik UI for .NET MAUI.
The goal with the .NET MAUI challenges is to focus on simple but specific important topics—developers will only need a few minutes to learn something new. Each challenge will have a statement to tickle developer brains, followed by a few options for the correct solution and study resources to delve deeper into the topic.
For the third .NET MAUI challenge, Leomaris brings up using the popular DateTimePicker in Telerik UI for .NET MAUI. The DateTimePicker is completely customizable—the challenge needs developers to render the DataTimePicker in a certain way and proposes three possible solutions, only one of which achieves the desired result. Go ahead .NET MAUI developers—challenge yourself and learn to dig a little deeper.
Building .NET MAUI apps is best supported in full Visual Studio, on both Windows and macOS—tooling is rich and stable. However, could developers leverage Visual Studio Code to build .NET MAUI apps realistically? While Command Line tools have always been around, a recent arrival might make VS Code is worthy alternative to Visual Studio in building .NET MAUI apps.
Gerald Versluis produced a video on the topic—build .NET MAUI Apps in VS Code with .NET Meteor.
Gerald starts out with a bit of background on .NET MAUI tooling in Visual Studio, before introducing .NET Meteor—the new VS Code Extension that allows developers to debug .NET 6/7 apps and deploy them to devices or emulators. Inspired by VS Code tooling for Comet, .NET Meteor makes .NET MAUI development in VS Code a little more realistic—developers can now easily deploy apps to iOS/Android devices or simulators. Gerald walks through the developer experience of creating a new .NET MAUI app with .NET Meteor Extension, setting up the Launch.json file and deploying .NET MAUI apps seamlessly to the iOS Simulator.
While VS Code may not have all the fancy tooling compared to big brother Visual Studio, developers can have solid IntelliSense. They'll be able to set/hit breakpoints and even consider building .NET MAUI apps on Linux—the .NET Meteor VS Code Extension is here to help.
Building a successful .NET MAUI app is only half the challenge—app deployment is a whole other story. Since .NET MAUI reaches mobile/desktop platforms of iOS, Android, Windows and macOS, developers/teams have to understand the nuances of pushing apps to production on respective platforms. Platform differences are not often for the fainthearted—what's called for is patience and careful understanding of the steps involved in pushing apps live.
Matt Goldman has written up an epic series on deploying .NET MAUI apps to production—Part 3 dives into pushing Windows .NET MAUI apps to the Microsoft App Store.
The Microsoft Store is a unified platform for the sale and distribution of physical products, digital content, games and software for the Windows, Xbox and HoloLens platforms. Windows apps are distributed bundled in MSIX package format, which contains app executable and metadata.
Matt starts out explaining how to work with the Microsoft Store App Developer program and walks developers through how to sign app bundles. Using the MauiStockTake sample app written for the .NET MAUI in Action book, Matt illustrates how developers can bundle, sign and work with the Microsoft Partner Center to upload/deploy .NET MAUI apps to the Microsoft Store. Matt is quick to point out that deploying apps to various Stores is just the beginning—conscious developers should keep in mind app telemetry, monetization and DevOps pipelines to manage future app updates.
One of the common things mobile developers need is to show off their work on a larger screen—this might be to showcase a proof-of-concept to customers or doing a demo while speaking. The point is to have technology that can readily mirror mobile devices onto computer screens, which can then be projected out. Thankfully, there are plenty of options and James Montemagno produced a relevant video—four ways to screen mirror an iPhone/iPad to Windows.
James starts off with Vysor, the popular app used to mirror iOS and Android via USB to both Windows/macOS. If the desire is to go wireless, Reflector is a great option to mirror iOS/Android devices through Airplay or Google Cast—there are tons of configuration options for developers to have a robust, all-in-one mirroring and streaming receiver.
For developers seeking a quick and easy infrequent solution, mobile device screens can be shared seamlessly through meeting software—Microsoft Teams, Google Meet and Zoom all work. As another option that is hardware-dependent but reliable, James points out how to capture mobile device output via HDMI cable and use Cam Link in OBS streaming software—this provides a lot of customizability as well.
Bottom line is, mobile developers have an arsenal of tools to show off their work and mirror device output to larger screens.
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 first part is up an a video—building a .NET MAUI Playlist Builder app from scratch.
What's a Playlist Builder app without an audacious movie—why not use Spotify APIs? In this first part, Daniel builds up the user login screen—it includes the acquisition of access tokens as needed by Spotify APIs. Along the way, developers get a glimpse of how real world .NET MAUI apps start out—like setting up the project, bringing in MVVM with CommunityToolkit.Mvvm, compiled bindings, animations and login to Spotify using a WebView.
Kudos, Daniel—looking forward to the rest of the app being built out.
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!
All fields are required
We see that you have already chosen to receive marketing materials from us. If you wish to change this at any time you may do so by clicking here.