DEV Community

David Ortinau
David Ortinau

Posted on

Roundup of .NET MAUI. - Week of July 18, 2022

Table of Contents:

Libraries

BlazorBindings.Maui

Oleksandr has been contributing to the official experiment project, and singlehandedly updated it to support .NET MAUI. He even now has documentation on his fork.

If you fancy writing your .NET MAUI using Blazor components and Razor syntax, check this out!

https://dreamescaper.github.io/MobileBlazorBindingsDocs

<StackLayout>
    <Label FontSize="30"
           Text="@("You pressed " + count + " times")" />
    <Button Text="+1"
            OnClick="@HandleClick" />
</StackLayout>

@code {
    int count;

    void HandleClick()
    {
        count++;
    }
}
Enter fullscreen mode Exit fullscreen mode

Shiny 3.0

https://shinylib.net/

MetroLog

The Frenchman Jean-Marie Alfonsi is shipping an updated fork of this popular logging framework from Claire Novotny with .NET MAUI compatibility.

GitHub logo roubachof / MetroLog

A lightweight logging system targeting .Net 6 and beyond.

Platform Logo Package
MetroLog.Net6 Nuget
MetroLog.Maui Nuget

Overview

MetroLog.Net6 is a .NET 6 lightweight logging framework designed primarily for mobile platforms like iOS and Android.

The intention is that MetroLog is mostly compatible with NLog. Both the surface area and internal construction should just about match.

However, to achieve better startup performance, configuration is only possible through code.

Configuration

Configuration is made through the crossing of a target and log levels.

A target specify how the logs will be stored. For example, you can use the DebugTarget to show your logs in the debug output Or you could use the FileSnapshotTarget to store your logs in a file.

The log levels describe the level of criticality. You bind each target to a set of log levels.

Standard configuration

    var config = new LoggingConfiguration()
#if RELEASE
    config.AddTarget(
        LogLevel.Info, 
        LogLevel.Fatal, 
        
Enter fullscreen mode Exit fullscreen mode

Bottom Sheet

I tested this on Mac Catalyst and it works as advertised. Bottom sheets a really pretty easy, and there are a few options out there if you don't fancy building your own.

https://www.nuget.org/packages/Sm.Maui.BottomSheet

Videos

Images in .NET MAUI

Did you know you can put animated GIFs in your .NET MAUI app?

Build your own controls in .NET MAUI

This is a super common pattern for creating custom controls. Compose the "in the box" views in .NET MAUI to meet any need.

Live Stream: Angular in .NET MAUI

What?! I think bringing Angular and React components into .NET MAUI in the same way we enable Blazor is super interesting.

.NET DC: Deploy JS Anywhere with .NET MAUI

Alyssa Nicoll is everywhere!

Windows System Tray Icons in .NET MAUI

This is something we did in the WeatherTwentyOne app too! Nice touch.

Scoped Dependencies in .NET

What's New in Syncfusion Controls for .NET MAUI

Worth the 2 minutes and the awesome music to see what Syncfusion just shipped for .NET MAUI.

Live Stream: Authentication with .NET MAUI

Sam Basu hosts Dan Siegel to discuss implementing auth in .NET MAUI.

Unit Testing in .NET MAUI

A Game Engine in .NET MAUI?

Why Shaun, why?! Because you can.

Discussion (0)