Maude.Native 0.3.0

dotnet add package Maude.Native --version 0.3.0
                    
NuGet\Install-Package Maude.Native -Version 0.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Maude.Native" Version="0.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Maude.Native" Version="0.3.0" />
                    
Directory.Packages.props
<PackageReference Include="Maude.Native" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Maude.Native --version 0.3.0
                    
#r "nuget: Maude.Native, 0.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Maude.Native@0.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Maude.Native&version=0.3.0
                    
Install as a Cake Addin
#tool nuget:?package=Maude.Native&version=0.3.0
                    
Install as a Cake Tool

Maude.Native — in-app performance tracker for .NET iOS, Android, and Mac Catalyst

Maude overlays live memory, FPS, and annotated events inside your app.

Maude is a powerful, lightweight tool to help you in your debugging battles.

Disclaimer ⚠️

Best effort has been made for performance and correctness, but Maude continuously snapshots memory and stores recent samples in-memory; expect a small observer effect.

Please treat Maude’s numbers as guidance, a heuristic.

Always use the native tools and platform-specific profilers (Xcode Instruments, Android Studio profiler) or dotnet trace for authoritative measurements.

Quickstart

Pick the host style that suits your app.

.NET for iOS, Android, and Mac Catalyst

  1. Provide a presentation window (Android requires an Activity):
// Android Activity
var options = MaudeOptions.CreateBuilder()
    .WithPresentationWindowProvider(() => this) // required on Android
    .Build();

MaudeRuntime.InitializeAndActivate(options);

On iOS or Mac Catalyst, the default window provider is used:

MaudeRuntime.InitializeAndActivate();
  1. Present Maude in your UI:
MaudeRuntime.PresentSheet();   // Slide-in sheet
MaudeRuntime.PresentOverlay(); // Window overlay
MaudeRuntime.DismissOverlay();

Documentation

Looking for builder options, event recording, FPS sampling, or platform-specific tips? Read the full guide at https://github.com/matthewrdev/maude/blob/main/docs.md.

What does Maude capture?

Android

Metric Description + Documentation
Resident Set Size (RSS) Physical RAM currently mapped into the process (Java + native + runtime), excluding swapped pages. Android Memory Overview/proc reference
Native Heap Memory allocated through native allocators (malloc, new) used by the ART runtime and native libraries. Debug.getNativeHeapAllocatedSize
CLR (Managed Heap) Managed heap consumed by the .NET/Mono runtime (GC generations, LOH, objects, metadata). .NET GC Fundamentals

iOS

Metric Description + Documentation
Physical Footprint (Jetsam Footprint) Total physical RAM attributed to the process by the kernel — the metric Jetsam uses to terminate apps. task_vm_info_data_tWWDC Memory Deep Dive
CLR (Managed Heap) Managed memory used by the .NET/Mono runtime on iOS (AOT GC heap + metadata). .NET GC Fundamentals

Limitations and Known Issues

Only Supported on .NET 9 and higher

Maude is explicitly built for .NET 9+ to leverage Span<T> optimisations; earlier target frameworks are unsupported.

More

Source, issues, and release notes live at https://github.com/matthewrdev/maude.

Product Compatible and additional computed target framework versions.
.NET net9.0-android35.0 is compatible.  net9.0-ios18.0 is compatible.  net9.0-maccatalyst18.0 is compatible.  net10.0-android was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Maude.Native:

Package Downloads
Maude

Monitor and visualise your .NET MAUIs apps memory usage and FPS at runtime. Supports Android, iOS and MacCatalyst.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.3.0 40 2/9/2026