/xamarin-forms-samples

Sample apps built using the Xamarin.Forms framework

Primary LanguageC#OtherNOASSERTION

Xamarin.Forms code samples

The samples in this repository demonstrate how to use different aspects of Xamarin.Forms to build cross-platform apps for iOS, Android, and the Universal Windows Platform (UWP). Please visit Microsoft code sample browser to download individual samples.

For additional platform support, visit the following forks:

License

See the license file and any additional license information attached to each sample.

Sample submission guidelines

This repository welcomes contributions and suggestions. If you want to create a new sample, you need to work with an employee to help bring the new sample into the repository. Start by raising a GitHub issue in this repository that outlines your proposed sample. Please note that samples in the master branch of this repository shouldn't rely on preview or pre-release NuGet packages.

The Xamarin.Forms samples in the Microsoft samples browser are sourced from this repository. Samples need to comply with the following requirements:

  • Screenshots - a folder called Screenshots that has at least one screen shot of the sample on each platform (preferably a screen shot for every page or every major piece of functionality). For an example of this, see TodoREST.

  • Readme - a README.md file that explains the sample, and contains metadata to help customers find it. For an example of this, see WebServices/TodoREST. The README file should begin with a YAML header (delimited by ---) with the following keys/values:

    • name - must begin with Xamarin.Forms -

      • description - brief description of the sample (< 150 chars) that appears in the sample code browser search

      • page_type - must be the string sample.

      • languages - coding language/s used in the sample, such as: csharp, fsharp, vb, java

      • products: should be xamarin for every sample in this repo

      • urlFragment: although this can be auto-generated, please supply a value that represents the sample's path in this repo, except directory separators are replaced with dashes (-).

      Here is a working example from WebServices/TodoREST README raw view.

      ---
      name: Xamarin.Forms - TodoREST
      description: This sample demonstrates a Todo list application where the data is stored and accessed from a RESTful web service.
      page_type: sample
      languages:
      - csharp
      products:
      - xamarin
      urlFragment: webservices-todorest
      ---
      # Heading 1
      
      rest of README goes here, including screenshot images and requirements/instructions to get it running

      NOTE: This must be valid YAML, so some characters in the name or description will require the entire string to be surrounded by " or ' quotes.

  • Buildable solution and .csproj file - the project must build and have the appropriate project scaffolding (solution + .csproj files).

This approach ensures that all samples integrate with the Microsoft sample code browser.

If you have any questions, create an issue or ask on the Xamarin Forums.