
MMS • Edin Kapic
Article originally posted on InfoQ. Visit InfoQ

Between December 2024 and January 2025, Microsoft released versions 10.0.0 and 11.0.0 of their open-source .NET MAUI Community Toolkit. The new versions add .NET 9 support and offline speech recognition to the toolkit. Many small updates and bug fixes are also released with the toolkit.
.NET MAUI Community Toolkit (NMCT) is one of Microsoft’s .NET community toolkits hosted on GitHub, catering for the MAUI developers. Their purpose is to let the community contribute useful code missing from official frameworks. The community toolkits are released as open-source software, and they encourage the developers to submit their contributions. Some toolkit additions can be later promoted into the official Microsoft libraries.
MAUI is an acronym that stands for Multiplatform Application UI. According to Microsoft, it’s an evolution of Xamarin and Xamarin Forms frameworks, unifying separate target libraries and projects into a single project for multiple devices. Currently, MAUI supports writing applications that run on Android 5+, iOS 12.2+, macOS 12, Samsung Tizen, Windows 10 version 1809+, or Windows 11.
The previous major version of NMCT, 9.0.0, was launched in May 2024. The team was busy preparing a version to coincide with the release of .NET 9 later last year. Version 10.0.0 was released on December 18th 2024, bringing full support for .NET 9 and .NET MAUI 9.
However, version 10.0.0 comes with breaking changes compared to NMCT 9.0.0. The most important one is that .NET 8 isn’t supported anymore (it needs .NET SDK 9.0.101) and that the Xcode 16.1 is required. There is a support matrix for MAUI and the platform-specific tools in the MAUI GitHub repository.
Another major breaking change is that the NMCT behaviours don’t automatically assign a BindingContext
, requiring the developers to assign the binding context manually in the markup. This is different from Xamarin.Forms, where the behaviours always inherit their parent’s binding context. In .NET MAUI, however, behaviours can be shared and applied to multiple controls via styles.
On January 17th 2025, version 11.0.0 of the NMCT was released. It brings offline speech recognition to the existing SpeechToText
API. This is exposed in the service builder as OfflineSpeechToText
implementation of the ISpeechToText
, as demonstrated in the sample app for the toolkit.
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp()
.UseMauiCommunityToolkit();
builder.Services.AddSingleton(OfflineSpeechToText.Default);
return builder.Build();
}
}
Minor updates in versions 10 and 11 include fix for the status bar, fix for maps, among others. A full list of fixes is provided in the release notes.
The .NET MAUI Community Toolkit is versioned in different releases, frequently updated. The reason for this multiplicity of version numbers is the presence of breaking changes, which force a major version number increase. Microsoft acknowledged the progress and the acceptance of the toolkit with a mention on their .NET developer blog.
The updated documentation for the .NET MAUI Community Toolkit is available on the Microsoft Learn website. The project repository is hosted on GitHub and currently has 138 open issues.