Skip to content

mindofai/XamarinComponents

 
 

Repository files navigation

Open Source Components for Xamarin

Open Source Components for Xamarin are a collection of open source components (including bindings and plugins) created by Xamarin and others in the community.

Xamarin Supported Open Source Components

Xamarin Supported Open Source components are a collection of Xamarin built bindings and libraries.

Name Description Source
Android Support Libraries Bindings for Google's Android Support Libraries GitHub
Google Play Services Client Libraries Bindings for Google's Play Services Client Libraries GitHub
Google API's for iOS Bindings for Google's API's for iOS Libraries GitHub
Facebook SDK's Bindings for Facebook's iOS & Android SDK's GitHub
Xamarin.Auth Cross-platform API for authenticating users and storing their accounts. GitHub

Community Provided Open Source Plugins

Plugins for Xamarin are community built NuGet and Components that add cross-platform functionality or abstracts platform specific functionality to a common API. These are both completely cross-platform and extremely small (i.e., they do 1 or 2 things really well with minimal-to-no dependencies). The Plugin API can be accessed on each platform, however, you will most likely only use the common API in a Portable Class Library or Shared Code project.

Notice: Plugins for Xamarin featured here are produced by the amazing open source community of Xamarin developers. Xamarin does not provide official support for these plugins, please contact their creator with any issues.

Popular Plugins

Browse through the most popular plugins out there today!

Name Description NuGet Docs & Source Creator
Battery Status Gather battery level, charging status, and type. NuGet GitHub @JamesMontemagno
Barcode Scanner Scan and create barcodes with ZXing.NET.Mobile. NuGet GitHub @Redth
Bluetooth LE Scan and connect to Bluetooth devices. NuGet GitHub @allanritchie911
Calendar Query and modify device calendars NuGet GitHub Caleb Clarke
Compass Access device compass heading. NuGet GitHub @cbartonnh & @JamesMontemagno
Connectivity Get network connectivity info such as type and if connection is available. NuGet GitHub @JamesMontemagno
Cryptography PCL Crypto provides a consistent, portable set of crypto APIs. NuGet GitHub @aarnott
Device Info Properties about device such as OS, Model, and Id. NuGet GitHub @JamesMontemagno
Device Motion Provides access to Accelerometer, Gyroscope, Magnetometer, and Compass. NuGet GitHub @rdelrosario
Embedded Resource Unpack embedded resource cross-platform. NuGet GitHub @JosephHill
External Maps Launch external maps from Lat/Long or Address. NuGet GitHub @JamesMontemagno
File Storage/File System PCL Storage offers cross platform storage APIs. NuGet GitHub @dsplaisted
File Picker Pick and save files. NuGet GitHub @studyxnet
Fingerprint Access Fingerprint sensor on iOS, Android, and Windows. NuGet GitHub @smstuebe
FFImageLoading Image loading with caching, placeholders, transformations and more NuGet GitHub @molinch, @daniel-luberda
Geofencing Monitor regions when user enters/exits. NuGet GitHub @allanritchie911
Geolocator Easily detect GPS location of device. NuGet GitHub @JamesMontemagno
iBeacon & Estimote Range and monitor Bluetooth beacons. NuGet GitHub @allanritchie911
In-App Billing Make, Query, and get In-App Purchases and Subscriptions. NuGet GitHub @JamesMontemagno
Lamp Access to LED NuGet GitHub @kphillpotts
Manage Sleep Manage auto sleep/auto lock. NuGet GitHub @molinch0
Media Take or pick photos and videos. NuGet GitHub @JamesMontemagno
Media Manager Playback for Audio. NuGet GitHub @mhvdijk
Messaging Make phone call, send sms, and send e-mail NuGet GitHub @cjlotz
Microsoft Band Connect and communicate with the Microsoft Band from shared code! NuGet GitHub @mattleibow
Mono.Data.Sqlite Add Mono.Data.Sqlite to any Xamarin or Windows .NET app. NuGet GitHub @mattleibow
Permissions Easily check and request runtime permissions. NuGet GitHub @JamesMontemagno
Persistent key-value store Akavache is an asynchronous, persistent (i.e. writes to disk) key-value store. NuGet GitHub @paulcbetts
Portable Razor Lightweight implemenation of ASP.NET MVC APIs for mobile. NuGet GitHub @JosephHill
Push Notifications Cross platform iOS and Android Push Notifications. NuGet GitHub @rdelrosario
Secure Storage Provides secure storage for key value pairs Data NuGet GitHub @sameerIOTApps
Settings Simple & Consistent cross platform settings API. NuGet GitHub @JamesMontemagno
Share Easily share text, links, or open a browser. NuGet GitHub @JamesMontemagno & @Jakob Gürtl
Sockets TCP & UDP Listeners and Clients + UDP multicast. NuGet GitHub @rdavis_au
Speech Recognition Speech to Text. NuGet GitHub @allanritchie911
Text To Speech Talk back text from shared code. NuGet GitHub @JamesMontemagno
Toast A simple way of showing toast/pop-up notifications. NuGet GitHub @AdamPed & @EgorBo
User Dialogs Message box style dialogs. NuGet GitHub @allanritchie911
Version Tracking Track which versions of your app a user has previously installed. NuGet GitHub @ColbyLWilliams
Vibrate Vibrate any device. NuGet GitHub @JamesMontemagno

Submit Your Ideas

We want to hear any and all ideas that you have for potential plugins. Browse through the current issues and see what other developers are interested in or submit your very own. Interested in helping work on a plugin? Simply comment on a plugin that you will start development, create a GitHub repo, and get coding!

Create a Plugin for Xamarin

If you are looking to create a plugin be sure to browse through NuGet first and ensure that the plugin doesn't exist. If one does join in on the fun and collaborate. If it doesn't and you want to start building a Plugin here are some tools and guidelines to get you started.

Tools to get Started

Requirements of a Plugin

  • Open source on GitHub
  • Documentation on GitHub's README file
  • Name: "FEATURE_NAME Plugin for Xamarin and Windows"
  • Namespace: Plugin.FEATURE_NAME
  • App-store friendly OSS license (we like MIT)
  • No dependency on Xamarin.Forms

Turn into a Component

Learn how to turn your NuGet based Plugin for Xamarin into a Component that can be featured in the Xamarin Component Store with our component documentation.

Perks

  • Help out fellow developers speed up development
  • Have fun and learn new tools
  • Our undying love

Releases

No releases published

Packages

No packages published

Languages

  • C# 98.9%
  • Makefile 0.5%
  • Smalltalk 0.2%
  • PowerShell 0.1%
  • Shell 0.1%
  • GLSL 0.1%
  • Other 0.1%