Giter VIP home page Giter VIP logo

xamarin-forms-labs's Introduction

Xamarin Forms Labs

Xamarin Forms Labs is a open source project that aims to provide a powerful and cross platform set of controls tailored to work with Xamarin Forms.

Call for action for all Xamarin Developers, embrace this project and share your controls and services with the community, add your own control to the toolkit.

Important for developers The master branch is the current development branch. The v.1.2-pre branch is the stable branch for the next release. If you are submiting a fix, make a PR to the v.1.2 branch

Available controls

Available services (Beta)

  • Accelerometer
  • Cache
  • Camera (Picture and Video picker, Take Picture, Take Video)
  • Device (battery info, device info, sensors, accelerometers)
  • Display
  • Geolocator
  • Phone Service (cellular network info, make phonecalls)
  • SoundService
  • Text To Speech

Available Mvvm helpers (Beta)

  • ViewModel (navigation, isbusy)
  • ViewFactory
  • IOC
  • IXFormsApp (application events)

Available Plugins (Beta)

  • Serialization (ServiceStackV3, ProtoBuf, JSON.Net)
  • Caching (SQLLiteSimpleCache)
  • Dependency Injection containers (TinyIOC, Autofac, NInject, SimpleInjector, Unity)
  • Web (RestClient)
  • Charting (Line, Bar & Pie) (Alpha)

HOW-TO

We are working in a great wiki on how to use the controls and services.

https://github.com/XForms/Xamarin-Forms-Labs/wiki

Using the MVVM Helpers

ViewFactory Coming soon

Using the controls

Add Xamarin.Forms.Labs.Controls reference to your projects , main pcl, ios, android, and wp.

Xaml :

Reference the assembly namespace

 xmlns:controls="clr-namespace:Xamarin.Forms.Labs.Controls;assembly=Xamarin.Forms.Labs"

Render your control:

 <controls:ImageButton Text="Twitter" BackgroundColor="#01abdf" TextColor="#ffffff" HeightRequest="75" WidthRequest="175" Image="icon_twitter" Orientation="ImageToLeft"  ImageHeightRequest="50" ImageWidthRequest="50" />

Or from your codebehind:

var button = new ImageButton() {
			ImageHeightRequest = 50,
			ImageWidthRequest = 50,
			Orientation = Orientation.ImageToLeft,
			Source = "icon_twitter.png",
			Text = "Twitter"
		};
stacker.Children.Add (button);

Using the Services

TextToSpeechService

DependencyService.Get<ITextToSpeechService>().Speak(TextToSpeak);

Device

	var device = Resolver.Resolve<IDevice>();
	device.Display; //display information
	device.Battery; //battery information

PhoneService

 	var device = Resolver.Resolve<IDevice>();
	// not all devices have phone service, f.e. iPod and Android tablets
	// so we need to check if phone service is available
	if (device.PhoneService != null)
	{
		device.PhoneService.DialNumber("+1 (855) 926-2746");
	}

Helper

Xamarin Forms Labs Framework Helper for online use

Xamarin.Forms.Labs.chm file for offline use


Build the project

To develop on this project, just clone the project to your computer, package restore is enable so build the solution first, if you get any errors try to build each project independently .


Nuget

Main Packages:

Plugins:

  • Caching
  • DI
  • Serialization
  • Cryptography

Contributions:

Other Project Contributions:

  • Xamarin.Mobile

Contribute

Everbody is welcome to contribute with any kind of controls or features at this time. Since there's no oficial releases feel free to submit your playground controls even if they aren't perfect.

Twitter hashtag : #xflabs


CHAT

Xamarin Forms Labs Chat room online on Jabbr


License

License Apache 2.0 more about that in the LICENSE file.

xamarin-forms-labs's People

Contributors

bkardol avatar bluechiperic avatar bowman74 avatar caupolican avatar elywejnak avatar excessuk avatar filipdevos avatar jassmith avatar jcarltonj avatar jguertl avatar jimbobbennett avatar joshcomley avatar maddb3457 avatar mattjcowan avatar mihamarkic avatar mitchmilam avatar monovo avatar namxh avatar nayzak avatar nrogoff avatar phrohdoh avatar qwin avatar ravensorb avatar rid00z avatar rmarinho avatar sami1971 avatar samu192 avatar saramgsilva avatar vratislav avatar wilfrem avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.