Monday, February 20, 2012

MvvmCross - Mvvm Across WP7, MonoDroid and MonoTouch

This is just a quick intro post for now... a more full story will follow when I get a bit more of that "spare time" thing, including time to write a few more samples.

I've recently been working on a big cross-platform mobile project targeting Wp7, Android and iPhone. As an inspiration for this we started using the MonoCross platform (http://code.google.com/p/monocross/) although we quickly discovered that MVVM rather than MVC was the way we wanted to go, especially as we were working WP7-first.

To enable this project, we've built our own MVVM framework - MvvmCross - available under a MS-PL license on GitHub at https://github.com/slodge/MvvmCross 

Explaining the framework is going to take a little time... and so will have to wait for a longer series of posts. However, as a quick introduction, the Customer Management sample currently builds and runs across the three major platforms -  https://github.com/slodge/MvvmCross/tree/master/Sample%20-%20CustomerManagement 

This sample has:

As a detailed example, consider the details view for a Customer.


Interested? Confused? Want to know more?

Well the source code is there to play with... and I will post some more samples and some more info soon... possibly on a blog with better code formatting!

One warning though... some of the code still needs a little finishing... especially the Touch/Dialog integration - only a few Elements are currently bound. If anyone wants to help... please let me know!

2 comments:

  1. I downloaded the source but when I try to compile it in VS2010 I'm getting reference not found errors for newtonsoft.json and WriteableBitmapExWinPhone

    ReplyDelete
  2. Thanks for the comment - sorry for the problems. I think this is WP7 only and related to those nuget imports. I've just updated the nuget sources inside the solution and pushed the solution to GitHub - https://github.com/slodge/MvvmCross.

    I hope that works for you. Sorry again for the problem - I do intend to release the binaries through nuget in which case building should be a lot easier.

    ReplyDelete