/awesome-xamarin

A collection of interesting libraries/tools for Xamarin mobile projects

awesome-xamarin

Awesome Build Status

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

Inspired by awesome-dotnet

General

  • AutoMapper ★4,111 - A convention-based object-object mapper in .NET
  • Humanizer ★2,407 - Manipulation and displaying of strings, enums, dates, times, timespans, numbers and quantities
  • Fluent Validation ★1,893 - Fluent interface and lambda expressions for building validation rules
  • NodaTime - Alternative date and time API for .NET
  • Polly ★1,913 - Exception handling policies such as Retry, Retry Forever, Wait and Retry or Circuit Breaker

Architecture

Async

Cloud

Database

Fody

Framework

Game Engine

IO/Storage

  • io ★2 - Access system folders and files using a familiar api
  • PCL Storage ★174 - consistent, portable set of local file IO APIs for .NET

IOC/DI

  • Autofac ★1,309 - An addictive .NET IoC container
  • DryIoc - fast, small, full-featured IoC Container for .NET
  • Funq ★1 - High performance DI framework by eliminating all runtime reflection through the use of lambdas and generic functions as factories
  • LightInject ★203 - Light, simple and stunningly fast IoC container for .NET
  • Ninject ★1,634 - The ninja of .net dependency injectors
  • Stiletto ★26 - .NET port of Dagger, the lightweight Android dependency injector from Square
  • TinyIoC ★466 - Single-class easy IoC container

Internationalization

  • Resxible ★6 - tool to generate automatically several platform-dependent resource files from a single RESX file
  • Vernacular ★161 - Cross Platform Localisation, tools to convert standard strings formats

Media

MVVM

Network

  • Flurl ★470 - Flurl is a modern, fluent, asynchronous, testable, portable, buzzword-laden URL builder and HTTP client library.
  • Fusillade ★160 - set of HttpMessageHandlers that make your mobile applications more efficient and responsive
  • Messaging - make a phone call, send a sms or send an e-mail using the default messaging applications
  • ModernHttpClient ★489 - Accelerates HTTP requests by using mobile-optimized libs (NSURLSession / OkHttp)
  • Push Notification - Simple cross platform plugin to handle push notification events such as registering, unregistering and messages arrival on Android and iOS.
  • Reachability ★12 - Online/offline connected check
  • Refit ★1,092 - The automatic type-safe REST library for Xamarin and .NET
  • RestEase ★81 - Refit on steroids, simpler auth, parsing...
  • Sockets ★113 - An abstraction over the socket helper classes of .NET and WinRT

Reactive

  • Akavache ★1,323 - An Asynchronous Key-Value Store for Native Applications
  • ReactiveUI ★2,780 - Rx MVVM framework
  • Refit ★1,092 - Refit is a library heavily inspired by Square's Retrofit library, and it turns your REST API into a live interface
  • RxFlow ★16 - Simple Flow Control Library with Rx(Reactive Extensions)

Security

  • BoucyCastle.PCL ★74 PCL Version of BouncyCastle (Cryptography) targetting .NET, SL, WP and WinRT
  • Fingerprint Plugin ★49 - Xamarin and MvvMCross plugin for accessing the fingerprint sensor
  • PCLCrypto ★127 - Cryptography for portable class libraries (MD5,...)
  • Permissions Simple cross platform plugin to check connection status of mobile device, gather connection type, bandwidths, and more

Serialization

TDD/BDD

Tools

  • GradleBindings ★56 - Visual Studio extension, for referencing gradle libs in Android projects
  • Material icons generator plugin - Xamarin Studio ★13 & Visual Studio plugin, for adding material icons to android project
  • PushSharp ★3,507 - 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-In ★15 - Productivity plugin for Xamarin Studio
  • Xamaridea ★34 - Visual Studio extension, opens *.axml files in Android Studio
  • Cheeseknife ★33 - a view injection library for Xamarin.Android

UI

  • NControl - Xamarin.Forms wrapper control built around the NGraphics library enabling developers to create custom controls
  • Passcode ★10 - Xamarin component for locking an app with a passcode

Wearable

Xamarin.Forms

XPlat APIs

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

  • Calendars ★25 - Calendar API plugin for Xamarin and Windows Phone, Supports basic CRUD operations with calendars and events.
  • Device Motion - Simple cross platform plugin to read motion vectors value for device motion sensors such as: Accelerometer, Gyroscope, Magnetometer, Compass.
  • Estimote ★19 - Cross platform implementation of the estimote library for beacons.
  • Fingerprint ★49 - Xamarin and MvvMCross plugin for accessing the fingerprint sensor.
  • HybridKit ★14 - Simple C# – JavaScript bridge for building hybrid iOS and Android apps.
  • Lamp - Simple way of controlling the lamp/LED on the back of your phone from Xamarin and Xamarin.Forms projects
  • ManageSleep ★5 - Manage auto sleep / auto lock in all platforms. This is useful when dealing with long running processes
  • Messaging ★40 - 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.
  • notifications ★16 - Notifications plugin for Xamarin and Windows
  • Pontoon ★19 - A flexible bridge to the Universal Windows Platform
  • Telephony ★14 - Email, sms, voice and video call functionality
  • userdialogs ★228 - Standard user dialogs from a shared/portable library.
  • Version - Get app version from bundle
  • Xamarin.Badge ★19 - Simple cross platform plugin to work with application badge
  • Xamarin.LocalNotifications ★29 - Simple cross platform plugin to work with mobile local notifications
  • Xamarin.Mobile ★205 - Reading the user's address book and using the camera
  • xamarin-plugins ★25 - Device Motion, Geofencing, Push Notifications (Beta)

Other lists

  • Xamarin Components ★231 - 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.

License

CC0

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