xamarin-forms-migration

Migrate Xamarin.Forms projects to .NET MAUI single-project apps.

Updated Nov 27, 2025
One-click install
npx skills add https://github.com/seydakaratekeli/KamPay3 --skill xamarin-forms-migration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: xamarin-forms-migration
Source: https://github.com/seydakaratekeli/KamPay3/tree/main/KamPay/.github/skills/xamarin-forms-migration%20-%20Kopyala
Command: npx skills add https://github.com/seydakaratekeli/KamPay3 --skill xamarin-forms-migration

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Provides a practical, field-tested workflow to move existing Xamarin.Forms projects to .NET MAUI while avoiding common pitfalls that break layouts, renderers, effects, namespaces, and NuGet compatibility. It condenses project conversion steps, namespace mappings, renderer-to-handler migration patterns, layout behavior fixes, and platform-specific warnings into a single actionable guide for developers maintaining production apps.

Core Features & Use Cases

  • Project conversion workflow: Create a new single-project MAUI app, copy cross-platform and platform code into Platforms/<platform>/, and iteratively update and build.
  • Namespace and API mapping: Clear mappings from Xamarin.Forms and Xamarin.Essentials namespaces to Microsoft.Maui equivalents and guidance on deprecated .NET APIs.
  • Renderer-to-handler and effects-to-behavior guidance: Patterns for using handler mappers and replacing effects with behaviors, plus warnings against shimmed renderers and compatibility packages.
  • Layout and platform pitfalls: Explicit advice for MAUI default spacing changes, *AndExpand obsolescence, ScrollView sizing, Frame/Border differences, and Android-specific testing recommendations.
  • Reference material: Integrated checklist and a detailed reference file for API and project file templates to use during migrations.

Quick Start

Use the xamarin-forms-migration skill to convert a Xamarin.Forms app to a .NET MAUI single-project by creating a new MAUI project, copying code into Platforms, updating Xamarin.* namespaces to Microsoft.Maui.*, migrating renderers to handlers and effects to behaviors, restoring explicit spacing and layout definitions, updating NuGet packages, and building iteratively to fix compiler errors.

Frequently Asked Questions about xamarin-forms-migration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate a Xamarin.Forms app to .NET MAUI?

Migrate Xamarin.Forms to .NET MAUI by creating a new single-project MAUI app, copying cross-platform and platform code into Platforms directories, updating Xamarin.* namespaces to Microsoft.Maui.*, and iteratively building to resolve compiler errors.

How do I convert custom renderers to handlers in .NET MAUI?

Convert custom renderers to handlers in .NET MAUI by using handler mappers instead of shimmed renderers, and replace existing effects with behaviors to align with the new handler architecture and avoid compatibility packages.

Why do my layouts break after migrating from Xamarin.Forms to MAUI?

Layouts break after migrating to MAUI due to default spacing changes and the obsolescence of AndExpand layout options, requiring you to restore explicit spacing definitions and adjust ScrollView sizing and Frame to Border differences.

How do I map Xamarin.Essentials namespaces to Microsoft.Maui?

Map Xamarin.Essentials namespaces to Microsoft.Maui equivalents during the migration process, alongside updating Xamarin.Forms namespaces, to ensure API compatibility and address deprecated .NET APIs in the new structure.

Does migrating Xamarin.Forms to MAUI require updating NuGet dependencies?

Migrating Xamarin.Forms to MAUI requires updating NuGet packages for compatibility with the single-project MAUI structure, ensuring all dependencies support the new framework and resolving Android-specific compatibility issues.

What is the best way to structure a .NET MAUI project after migrating from Xamarin.Forms?

The best way to structure a .NET MAUI project is using a single-project structure, organizing cross-platform and platform-specific code into Platforms/<platform>/ directories, and iteratively updating and building to fix errors.