Awesome Xamarin.Forms PRs Welcome

A curated list of awesome Xamarin.Forms libraries and resources.

Stars Forks Entries

Contributions are always welcome!.

You can find other awesome lists related to Xamarin below:

Animations

Backends (Other platforms)

Behaviors

Books

Cloud

Community Toolkit

  • XamarinCommunityToolkit ★1148: The Xamarin Community Toolkit is a collection of common elements for mobile development with Xamarin.Forms that people tend to replicate across multiple apps. It simplifies and demonstrates common developer tasks when building apps with Xamarin.Forms.

Converters

Crumbs

  • Xamarin Crumbs ★8: A set of source code files —including XAML ones— to reuse once and again.

Data

  • Apizr ★85 - Refit based web api client management, but resilient (retry, connectivity, cache, auth, log, priority, etc...).
  • Postman: Tool for test web services requests and responses.
  • Polly: Automatic retry policies.

Database

  • Akavache ★2234: Akavache is an asynchronous, persistent (i.e. writes to disk) key-value store created for writing desktop and mobile applications in C#, based on SQLite3. Akavache is great for both storing important data (i.e. user settings) as well as cached local data that expires.
  • Azure Mobile Apps ★120: Offline sync-enabled Xamarin apps that connect to Azure Mobile App.
  • CosmosDB ★537: Azure Cosmos DB is a globally distributed, multi-model database service.
  • Entity Framework Core ★11230: Is a lightweight and extensible version of the popular Entity Framework data access technology.
  • LiteDB ★6418: A .NET NoSQL Document Store in a single data file.
  • Realm: Alternative to SQLite, simple and fast.
  • SQLite-net ★3299: It is an open source, minimal library to allow .NET and Mono applications to store data in SQLite 3 databases.
  • NETCoreSync ★53: Database-agnostic synchronization framework based on .NET Standard 2.0 to synchronize data between multiple clients and a single server.

Design

Effects

Images and Icons

Mirroring Devices

  • AirDroid: Utility for mirroring, file transfer, remote control, notifications, etc. an Android device.
  • Vysor: Utility for mirroring your Android physical device to your screen.
  • QuickTime Player: For mirroring iOS devices.

MVVM

Elmish

Frameworks

  • AppHosting ★2: a closest ASP.NET Core Hosting implementation for Xamarin.Forms built to deliver better architecture for your application. Sample project and detailed wiki included.
  • Clarity ★25: Is an application framework for XAML based platforms.
  • XamFluentUI ★27: Fluent UI API for Xamarin Forms.

Performance

Plugins

Project Templates

  • Prism Template Pack: Contains a collection of snippets, item templates, and project templates for use with building Xamarin.Forms applications using Prism.
  • Xamarin.Forms Advanced Template (v3.0) ★22: Featuring AppHosting library + must-haves for every developer: Host, navigation providers, essential and utility services, async commands, pre-configured platform projects.

Samples

Serialization

  • JSON.NET ★9250: Is a popular high-performance JSON framework for .NET
  • Utf8Json ★2239: Definitely Fastest and Zero Allocation JSON Serializer for C#(.NET, .NET Core, Unity and Xamarin), this serializer write/read directly to UTF8 binary so boostup performance.

Testing

Tools

  • Android File Transfer: Browse and transfer files between your Mac computer and your Android device.
  • AssetBuilder ★8: Tool to automate the process of creating Xamarin.Forms icons and splash screens from SVGs.
  • Assetxport ★15: Resize UWP, Xamarin.Android and Xamarin.iOS assets automatically.
  • Beholder: Beholder is a hot reloading support tool for programs using Tizen.NET's NUI.
  • Charles: Is an HTTP proxy / HTTP monitor / Reverse Proxy that enables viewing of all the HTTP and SSL / HTTPS traffic between the machine and the Internet.
  • clean-compress ★4: A macOS utility that cleans (and optionally compresses/zips) Xamarin solutions.
  • Codexcite.Reloader ★6: Lightweight library for "live reloading" XAML pages in Xamarin.Forms on Android, UWP and iOS.
  • dpilove: Easily find the DPI of any screen.
  • Evans.XamlTemplates ★2: This is a templating system that will allow you to create templates in Xamarin.Forms.
  • Gorilla Player: Instant XAML Preview for Xamarin Forms.
  • HotReload ★410: Xamarin.Forms XAML hot reload, live reload, live xaml.
  • Infragistics AppMap: Visually map out and generate your Xamarin.Forms application. Code generation includes Pages (Views), ViewModels, and navigation code that follows best-practice Prism MVVM architecture.
  • LiveXAML: Whenever you save any XAML file, it automatically updates the running application.
  • MFractor: MFractor is the essential productivity tool for Xamarin Studio.
  • Mutatio ★27: Visual Studio for Mac add-in/extension for converting old PCLs to .NET Standard 2.0 targeting projects automatically.
  • Productivity Power Tools: An extension bundle installer that will install each of the individual components of Productivity Power Tools (copy has HTML, fix tabs, etc.).
  • RealXaml ★37: Is a live viewer for Xamarin Forms. Edit your xaml and see your changes in realtime (live reload). It allows also to compile and deploy your app core assembly in real time (hot reload).
  • scrcpy ★64517: This application provides display and control of Android devices connected on USB (or over TCP/IP). It does not require any root access. It works on GNU/Linux, Windows and MacOS.
  • SkiaSharpFiddle ★118: A SkiaSharp playground - just like https://fiddle.skia.org, but for your own machine!
  • UI Sleuth: Xamarin.Forms debugging tool.
  • VSTouchbarTools ★2: A simple extension that installs a XML definition for Parallels v13 to offer basic Touchbar support.
  • vsmacdeepclean ★35: Is a Visual Studio for macOS add-in / extension that let you easily clean projects, NuGet, Xamarin and VS cache without leaving the IDE.
  • XAMLator ★201: Is a live XAML previewer for Xamarin.Forms. Change something in your view's XAML in Visual Studio and you preview it live in your device or simulator!
  • XAML Styler: A visual studio extension, which formats XAML source code by sorting the attributes based on their importance.
  • NSwag ★5096: Swagger and code generation tool for C#. Easily integrate your own or 3rd party APIs into your app.
  • How to set up Xamarin.Android on Linux ★134: A guide to getting Xamarin.Android ready to use on your distro of choice (plus JetBrains Rider support)!
  • Xamarin.Forms Android on Linux command line tools ★10: This is a similar experimental project and documentation to build Android applications on Linux, using the Xamarin.Android and IDE like the Visual Studio Code or MonoDevelop.
  • xamarin-forms-android-linux-project-templates ★1: Xamarin.Forms Android templates for Linux-based build.
  • XFDesigner ★19: Live XAML designing tool for Xamarin.Forms.
  • vs-material-icons-generator ★48: Add Google's material icons easily with different sizes and colors.
  • XDtoXF ★142: Adobe XD Plugin to export assets to Xamarin.Forms XAML Styles and Resources.
  • XF.Material.Themer: A Xamarin.Forms utility to help visualize a custom Android material theme.
  • XamarinForms.VisualDebugger ★22: A library and client app to view the visual heirarchy of your Xamarin app pages as an interactive tree diagram.

TV

  • Tizen.TV.UIControls ★37: The Tizen TV UIControls is a set of helpful extensions to the Xamarin Forms framework for the Samsung TV device.

UI

UI Testing

  • Xamarin UITest: An Automated UI Acceptance Testing framework that allows programmers to write and execute tests in C# and NUnit that validate the functionality of iOS and Android Apps.
  • Xamarin Test Recorder: This tool makes it easy to record automated tests for your app.
  • Xamarin.UITest.POP ★68: This project demonstrates the page object pattern (POP) that they use internally at Xamarin.
  • Xamarin UITest SpecFlow ★11: This project demonstrates how to use SpecFlow with Xamarin.UITest (including the Page Object Pattern). SpecFlow is a pragmatic BDD solution for .NET. It uses the Gherkin specification language and integrates to Visual Studio.

Wearables

  • Tizen.CircularUI ★82: Tizen Wearable CircularUI project is to develop an open source software motivate software developer to creating Tizen Wearable Xamarin Forms app more easily and efficiently.