Getting Started with MvvmCross

Edit
NuGet Continuous Integration
NuGet MyGet

Introduction

MvvmCross is a cross-platform MVVM framework that enables developers to create powerful cross platform apps. It supports Xamarin.iOS, Xamarin.Android, Xamarin.Mac, Xamarin.Forms, Universal Windows Platform (UWP) and Windows Presentation Framework (WPF).

The high level features that MvvmCross provides you with are:

  • MVVM architecture pattern
  • Navigation system
  • Data Binding
  • Platform specifics support
  • Inversion of control and Dependency Injection
  • Lots of plugins for common functionalities
  • Unit test helpers
  • Complete flexibility - your app is King!

Your first project with Xamarin and MvvmCross

Here is a video that will help you creating a project from scratch with Xamarin and MvvmCross:

https://www.youtube.com/watch?v=NihmK6R9r4s

It gives all the detailed steps for a solution that includes a Core PCL and app projects for iOS, Android and Windows Phone.

Here is the article that contains the text version:

http://jonathanroux.com/2016/02/09/mvvmcross-4-and-xamarin-project-setup/

MvvmCross Templates

You can also install the templates for Visual Studio and Xamarin Studio:

Name Author Link
XabluCross for MvvmCross XabluCross Visual Studio
MvvmCross for Visual Studio Jim Bennet Visual Studio - Xamarin Studio
MvvmCross Plugin Template for Visual Studio EShy Visual Studio
Xamarin MvvmCross Dreams Artmdev Visual Studio
Xamarin Forms with MvvmCross Solution Template Cristian Chereches Visual Studio
Ninja Coder For MvvmCross and Xamarin Forms Ninja Coder for MvvmCross Visual Studio
MVXTemplates Luke Pothier Visual Studio

You can choose to download and install an extension manually, or you can get it from the Extension Manager in Visual Studio / the Add-In Gallery in Xamarin Studio (Visual Studio for Mac).

Help updating the docs!

Everyone can contribute and help improving the docs! The docs are part of the source tree, so just go over to github and help us out!