List.community

awesome-xamarin

Awesome Build Status PRs Welcome

A hand-picked bookmark collection of subjectively modern/interesting libraries/tools for Xamarin Android/iOS/Windows/OSX

General

  • AutoMapper6k 2k - A convention-based object-object mapper in .NET
  • Humanizer1k 216 - Manipulation and displaying of strings, enums, dates, times, timespans, numbers and quantities
  • Fluent Validation3k 655 - Fluent interface and lambda expressions for building validation rules
  • NodaTime - Alternative date and time API for .NET
  • Polly2k 293 - Exception handling policies such as Retry, Retry Forever, Wait and Retry or Circuit Breaker

Architecture

  • Behaviors Toolkit29 5 - A means of adding common and reusable interactivity to your Xamarin applications with minimal code
  • Conditions - Library that helps developers write pre- and postcondition validations in a fluent manner
  • Stateless1k 177 - State Machines

Async

  • AsyncEx889 141 - A helper library for async/await
  • LinqToAwait62 7 - A Task-based LINQ designed to work with async/await

Charts

  • OxyPlot977 574 - Cross-platform plotting library for .NET
  • MicroCharts305 33 - Create cross-platform (Xamarin, Windows, ...) simple charts.

Cloud

  • Azure - Microsoft Azure
  • FireSharp400 116 - Firebase REST API wrapper
  • Bugfender3 3 - Store your application logs on the cloud (iOS & Android)

Database

  • Akavache2k 265 - An Asynchronous Key-Value Store for Native Applications
  • Breeze59 19 - Data management library for developers of rich client applications
  • Couchbase.Lite296 121 - Lightweight embedded NoSQL database
  • Lager - Cross-platform settings storage that uses Akavache as a storage backend
  • Massive386 95 - "wrapper" for your DB tables and uses System.Dynamic extensively
  • Realm684 115 - mobile database that runs directly inside phones, tablets or wearables
  • Settings36 10 - Cross platform settings plugin for Xamarin and Windows
  • SQLite.Net-PCL347 242 - SQLite 3 databases support, PCL, async

Fody

  • Fody2k 276 - Extensible tool for weaving .net assemblies
  • AutoDependencyProperty.Fody - Automatically generates DependencyProperty boilerplate from simple C# properties
  • PropertyChanged.Fody619 125 - Injects INotifyPropertyChanged code into properties at compile time
  • ReactiveUI.Fody73 18 - Generate RaisePropertyChange notifications for properties and ObservableAsPropertyHelper properties

Framework

  • Ammy - Modern UI language for XAML platforms. Free for non-commercial development
  • Appercode.UIFramework - Allows to build user interface of cross-platform mobile applications with single XAML layout
  • Fusion - Cross-platform C#-based mobile app development framework, built on top of Xamarin.iOS and Xamarin.Android
  • SimplyMobile44 14 - Collection of abstracted mobile functionalities
  • Xamu-Infrastructure44 10 - Extensions, MVVM classes, behaviors and other misc. useful code bits from Xamarin University

Game Engine

  • CocosSharp469 174 - C# implementation of the Cocos2D and Cocos3D APIs
  • MonoGame861 333 - Open source implementation of the Microsoft XNA 4.x Framework
  • Paradox1k 335 - Paradox3D + Silicon Studio .NET
  • UrhoSharp - Cross-platform high-level 3D and 2D engine

IO/Storage

  • io3 2 - Access system folders and files using a familiar api
  • PCL Storage212 120 - consistent, portable set of local file IO APIs for .NET

IOC/DI

  • Autofac2k 627 - An addictive .NET IoC container
  • DryIoc - fast, small, full-featured IoC Container for .NET
  • Funq - High performance DI framework by eliminating all runtime reflection through the use of lambdas and generic functions as factories
  • LightInject287 100 - Light, simple and stunningly fast IoC container for .NET
  • Ninject2k 593 - The ninja of .net dependency injectors
  • Stiletto12 3 - .NET port of Dagger, the lightweight Android dependency injector from Square
  • TinyIoC299 106 - Single-class easy IoC container

Internationalization

  • Resxible9 4 - tool to generate automatically several platform-dependent resource files from a single RESX file
  • Vernacular175 47 - Cross Platform Localisation, tools to convert standard strings formats
  • I18NPortable15 3 - Simple and cross platform internationalization/translations for Xamarin and .NET

Layout

  • Flex74 11 - Flexible box layout system.

Media

  • EZ-Compress - A simple image stream compression plugin for Xamarin
  • Fast & Furious Image Loading857 251 - Xamarin library to load images quickly & easily
  • Lottie283 58 - Render After Effects animations natively on Android and iOS for Xamarin
  • MediaManager162 83 - Cross platform Xamarin plugin to play Media from PCL
  • NGraphics405 105 - Cross platform library for rendering vector graphics
  • PDFReader37 9 - iOS (-only) library to display PDF documents on iPad and iPhone
  • SkiaSharp - Powerful C# API for doing 2D graphics. It is powered by Google’s Skia library
  • Splat6 3 - Cross platform image loading, colors and stuff
  • SimpleAudioPlayer4 3 - Simple plugin for plays local files and audio data as a stream

MVVM

  • Frameworks
    • MVVMCross3k 1k - Cross-platform mvvm mobile development framework
    • FreshMvvm420 200 - Super light Mvvm Framework designed specifically for Xamarin.Forms
    • MugenMvvmToolkit118 31 - Cross-
    • MVVMLight - Cross-platform MVVM development framework
    • MvvmNano34 7 - Small and smart MVVM framework made with ❤ for Xamarin.Forms
    • ReactiveUI4k 848 - Rx MVVM framework
  • Bind64 7 - Bind gives you easy two-way data binding between properties of objects.
  • Wires12 5 - Wires is a simple binding library.

Network

  • Flurl783 137 - Flurl is a modern, fluent, asynchronous, testable, portable, buzzword-laden URL builder and HTTP client library.
  • Fusillade181 22 - set of HttpMessageHandlers that make your mobile applications more efficient and responsive
  • Messaging56 32 - make a phone call, send a sms or send an e-mail using the default messaging applications
  • ModernHttpClient565 245 - Accelerates HTTP requests by using mobile-optimized libs (NSURLSession / OkHttp)
  • NFC1 1 - Xamarin plugin for reading NFC tags.
  • Push Notification151 105 - Simple cross platform plugin to handle push notification events such as registering, unregistering and messages arrival on Android and iOS.
  • Reachability19 2 - Online/offline connected check
  • Refit2k 247 - The automatic type-safe REST library for Xamarin and .NET
  • RestEase220 31 - Refit on steroids, simpler auth, parsing...
  • RestLess25 5 - The automatic type-safe-reflectionless REST API client library for .Net Standard.
  • Sockets146 77 - An abstraction over the socket helper classes of .NET and WinRT

Reactive

  • Akavache2k 265 - An Asynchronous Key-Value Store for Native Applications
  • ReactiveUI4k 848 - Rx MVVM framework
  • Sensors8 3 - ACR Reactive Sensors Plugin for Xamarin & Windows
  • Refit2k 247 - Refit is a library heavily inspired by Square's Retrofit library, and it turns your REST API into a live interface
  • ReactiveProperty281 59 - Provides MVVM and asynchronous support features under Reactive Extensions
  • RxFlow16 2 - Simple Flow Control Library with Rx(Reactive Extensions)

Security

  • BoucyCastle.PCL89 40 PCL Version of BouncyCastle (Cryptography) targetting .NET, SL, WP and WinRT
  • Fingerprint Plugin115 37 - Xamarin and MvvMCross plugin for accessing the fingerprint sensor
  • PCLCrypto161 36 - Cryptography for portable class libraries (MD5,...)
  • Permissions824 392 Simple cross platform plugin to check connection status of mobile device, gather connection type, bandwidths, and more

Serialization

TDD/BDD

Tools

  • GradleBindings68 4 - Visual Studio extension, for referencing gradle libs in Android projects
  • Material icons generator plugin - Xamarin Studio & Visual Studio plugin, for adding material icons to android project
  • PushSharp4k 2k - A server-side library for sending Push Notifications to iOS (iPhone/iPad APNS), Android (C2DM and GCM - Google Cloud Message), Windows Phone, Windows 8, Amazon, Blackberry, and (soon) FirefoxOS devices!
  • Twin Tools Add-In19 3 - Productivity plugin for Xamarin Studio
  • Xamaridea4 0 - Visual Studio extension, opens *.axml files in Android Studio
  • Cheeseknife40 20 - a view injection library for Xamarin.Android
  • XamFormsMvxTemplate4 4 Visual Studio Marketplace - MVVMCross.Forms Visual Studio 2017 project template (iOS, Android, UWP)

UI

  • NControl188 70 - Xamarin.Forms wrapper control built around the NGraphics library enabling developers to create custom controls
  • Passcode - Xamarin component for locking an app with a passcode
  • BadgeView - A simple Xamarin.Forms control to display a round badge
  • Swipecards8 1 - A Tinder-like swipe control for Xamarin.Forms
  • PullToRefreshLayout61 20 - Pull To Refresh a ScrollView or ListView in Xamarin.Forms

Wearable

Xamarin.Forms

  • Acr-xamarin-forms249 131 - Camera/Gallery, Barcode Scanning, User Dialogs, Geo-Location, Network Utils, Device Info, Settings, E-Mail, Phone, SMS all for Xamarin.Forms
  • AdvancedTimer21 11 - Timer object and its methods are implemented for extended support for timers.
  • Android AppCompat41 12 - Provide Material Design themes now for Xamarin.Forms apps natively without hacks
  • Circle Image Control824 392 - Simple but elegant way of display circle images in your Xamarin.Forms projects
  • Compass - Provides and simple way to access the compass on Windows Phone, iOS and Android from you Xamarin.Forms projects
  • Device Orientation2 1 - Simple cross-platform plugin to work with screen orientation of mobile device
  • Device Orientation7 7 - Simple way to get device orientation or be notified of orientation changes in your Xamarin.Forms projects
  • NControl188 70 - Xamarin.Forms control for NGraphics
  • MvxForms7 2 - MVVMCross plugin for using Xamarin.Forms
  • Rb.Forms.Barcode31 9 - Xamarin.Forms view for scanning barcodes
  • SolTech Xamarin Forms Toolkit3 1 - set of helpful extensions to the Xamarin Forms framework
  • Store Rating Plugin - Rate app popup
  • SVG169 94 - SVG file format support
  • Toasts Plugin167 63 - A simple way of showing some notifications inside your Xamarin.Forms application
  • TwinTechsFormsLib157 68 - FastCell, FastImage, FastGridCell
  • Xamarin-Forms-Labs1k 1k - Powerful and cross platform set of controls and helpers
  • xamarin-forms-xna6 2 - Monogame wrapper for Xamarin.Forms
  • Xamarin.Forms.GoogleMaps205 123 - Maps library for Xamarin.Forms using Google Mapps API

XPlat APIs

Most of them support Android and iOS, some do Windows Phone 8

  • Calendars62 15 - Calendar API plugin for Xamarin and Windows Phone, Supports basic CRUD operations with calendars and events.
  • Device Motion151 105 - Simple cross platform plugin to read motion vectors value for device motion sensors such as: Accelerometer, Gyroscope, Magnetometer, Compass.
  • Estimote29 17 - Cross platform implementation of the estimote library for beacons.
  • Fingerprint115 37 - Xamarin and MvvMCross plugin for accessing the fingerprint sensor.
  • HybridKit18 1 - Simple C# – JavaScript bridge for building hybrid iOS and Android apps.
  • Lamp9 10 - Simple way of controlling the lamp/LED on the back of your phone from Xamarin and Xamarin.Forms projects
  • ManageSleep8 3 - Manage auto sleep / auto lock in all platforms. This is useful when dealing with long running processes
  • Messaging56 32 - The Messaging plugin makes it possible to make a phone call, send a sms or send an e-mail using the default messaging applications on the different mobile platforms.
  • notifications28 10 - Notifications plugin for Xamarin and Windows
  • Pontoon - A flexible bridge to the Universal Windows Platform
  • Telephony18 13 - Email, sms, voice and video call functionality
  • userdialogs374 186 - Standard user dialogs from a shared/portable library.
  • Version13 4 - Get app version from bundle
  • Xamarin.Badge - Simple cross platform plugin to work with application badge
  • Xamarin.LocalNotifications - Simple cross platform plugin to work with mobile local notifications
  • Xamarin.Mobile235 101 - Reading the user's address book and using the camera
  • xamarin-plugins32 33 - Device Motion, Geofencing, Push Notifications (Beta)

Other lists

  • Xamarin Bindings53 4 - A list of existing library bindings
  • Xamarin Components1k 297 - Here you will find a listing of cross platform Plugins for Xamarin that support Xamarin.iOS, Xamarin.Android, Xamarin.Forms, and Windows Platform from a single API.

Websites

  • Weekly Xamarin - Hand-picked round up of the best Xamarin development links every week. Curated by Geoffrey Huntley and published every Friday. Free.
  • Planet Xamarin - An aggregator of content from Xamarin Community members. Why subscribe individually when you can subscribe to one convenient RSS feed? If RSS isn't your thing, follow the Twitter or Facebook accounts which are automatically updated with the latest content from the community.

Contributors

benoitjadinoninteristiJTOne123alexsorokoletovandmosandreinitescu
benoitjadinoninteristiJTOne123alexsorokoletovandmosandreinitescu
ghuntleyjgimenezSamuelDebruynwcoderamay077xleon
ghuntleyjgimenezSamuelDebruynwcoderamay077xleon

License

CC0

To the extent possible under law, Benoit Jadinon has waived all copyright and related or neighboring rights to this work.