MvvmCross
MvvmCross is a cross-platform mvvm framework that enables developers to create cross platform apps.
Documentation & blog
- See our official website for an extensive set of documentation!
- To stay up-to-date with the latest news go to the MvvmCross blog!
Get started
A quick way to get started is to use the Visual Studio MvvmCross Ninja Coder Extension - download it from Visual Studio Gallery
For manual project creation install the necessary packages from Nuget
Questions & support
- StackOverflow
- Xamarin forums
- Slack join the #mvvmcross channel after you are in
Documentation and Examples
The MvvmCross-Samples repo contains the latest samples. See the MvvmCross Wiki for additional articles and information.
Samples and Videos:
- N Plus 1 Videos Of MvvmCross
- MvvmCross Tutorials
- Evolve 2013 talk
- NDC 2013 talk
- Xaminar - 2012
- MvvmCross and Azure - 2012
The Tip Calc tutorial:
- A first app
- The Core Project
- A Xamarin.Android UI project
- A Xamarin.iOS UI project
- A Universal Windows App UI Project
- A Windows Phone UI Project
- A Windows Store UI Project
- A Wpf UI Project
- Tip Calculator - A recap
General articles:
- The MvvmCross Manifesto
- High Level MvvmCross Objects
- Databinding
- Value Converters
- View Model Lifecycle
- ViewModel to ViewModel navigation
- Customizing App and Setup
- Service Location and Inversion of Control
- Assemblies
- Plugins
- Testing
- Dialog - very draft
iOS Articles:
For more information please also see:
- the N+1 video series - N Plus 1 Videos Of MvvmCross
- Stuart's blog
- Cheesebaron's blog
- DeapSquatter's blog
- Odenaxos's blog
- Greg's blog
- Kerry's blog
- Jammer's blog
- others? Get in touch if you think your blog should be here......
Contribute!
Some of the best ways to contribute are to try things out, file bugs, and join conversations.
If you would like to help make MvvmCross even better, then please do:
- new code - including pull requests via GitHub - or you can fork the project and build your own extensions
- new plugins - can be hosted in your own repositories
- please do blog about your adventures with MvvmCross - we're currently light on documentation!
- if you use the framework, then please let me know - we love to see what people are doing with it
Licensing
MvvmCross is licensed under the MS-PL License
- MonoCross was the original starting point for this project, and was used as a reference under MIT
- Phone7.Fx is redistributed and modified under MS-PL
- Tiny bits of MvvmLight are redistributed and modified under MIT
- NewtonSoft.Json is redistributed and modified here under MIT
- The original work on the JSON.Net port to MonoTouch and MonoDroid was done by @ChrisNTR
- Sqlite-net - custom license
- MonoTouch.Dialog - MIT X11
- MonoDroid.Dialog - MIT X11
- Messenger ideas from JonathanPeppers/XPlatUtils under Apache License Version 2.0, and from GrumpyDev/TinyMessenger under simple license of "THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY"
- Color codes under MIT License
Acknowledgements
- Thanks to McCannLondon for sponsoring the initial part of this work
- Thanks to JetBrains for a community Resharper license to use on this project
- Thanks to Infragistics for a control license for Nuclios and .Net