A cross-platform UI toolkit for building native iOS, Android, Windows, and macOS apps with C# and .NET.
Xamarin.Forms was an open-source UI framework for building native mobile and desktop applications for iOS, Android, Windows, and macOS using C# and .NET. It allowed developers to create a single shared UI codebase that rendered to platform-specific native controls, solving the problem of maintaining separate codebases for each operating system. The framework has reached end-of-life and was succeeded by .NET MAUI.
.NET developers and teams looking to build cross-platform mobile and desktop applications with a single C# codebase and native performance.
It offered a high degree of code reuse and a familiar C#/.NET development experience while still producing fully native applications, which was a compelling alternative to hybrid web-based frameworks or maintaining multiple native codebases.
Xamarin.Forms is no longer supported. Migrate your apps to .NET MAUI.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Enables writing UI once in XAML or C# to render native controls on iOS, Android, Windows, and macOS, as highlighted in the key features for rapid development.
Applications compile to native ARM or x86 code, leveraging platform-specific APIs and hardware acceleration for performance comparable to native apps.
Allows sharing of business logic, data models, and networking across all platforms, maximizing code reuse and reducing maintenance effort.
Supports custom renderers and effects for fine-grained control over native UI behavior, providing flexibility when the standard abstraction is insufficient.
Official support ended on May 1, 2024, with no future updates, bug fixes, or security patches, as stated in the README, making it risky for production use.
The README outlines extensive provisioning steps for SDKs and tools on both Windows and Mac, including manual configuration for maps and UI tests, which can be time-consuming.
As the successor, .NET MAUI requires significant effort to upgrade, with potential breaking changes and limited backward compatibility, necessitating a full project overhaul.