[NOT FOR PRODUCTION] - 4th March 2018
Exrin is being left here as more of a playground, and to show the inner workings of MVVM frameworks. It is no longer actively being enhanced, but will still be around for bug fix support if needed. Exrin never really took off, and there are plenty of MVVM Frameworks on the market, that are being actively developed.
Though I still think that Exrin has one of the best navigational frameworks compared to any currently existing MVVM framework.
Exrin is an extended Xamarin Forms MVVM Framework designed to enable teams to develop consistent, reliable and highly performant mobile apps. Exrin lets you put more focus on how the app will look and function, while Exrin takes care of handling the rest.
- Easily isolate and unit test Commands in ViewModels
- Advanced NavigationService that takes care of all the plumbing.
- Enforces consistency, which is of more benefit when multiple developers are working on the project.
- Handles complex threading scenarios.
- Flexible. Allows you to choose your own Dependency Injection Framework.
Install the Nuget Package
Read the Docs
Quick Sample - A very basic quick start sample.
Tesla App - Shows more advanced usage of Exrin with TabbedPages and MasterDetailPage.
3rd Party App Samples
Exrin Providers - An intermediate example of Exrin.
Visual Studio Template
Exrin Template - Jump start your Exrin App with the template
Introduction to Exrin - A walkthrough on how the template is setup and how Exrin is designed to work.
Frequently Asked Questions
Is this another MVVM Framework? Yes and no. It contains all the MVVM helpers you would need however you can use another MVVM framework with Exrin if you choose.
What IoC does it use? None, you use your own IoC and DI Framework when configuring your app. After using a few on different projects, I prefer AutoFac.
Does Exrin have any dependencies? No. That was a critical design point. Exrin does not depend on anything. Having a package that locks you into another package version has become increasing frustrating and Exrin will not be a part of that.
Why this framework? It's not going to be for everyone. It is opinionated and requires a bit of effort in project setup. The benefits however include consistency and easy testability for your mobile app. The benefits are greatly enhanced if 2 or more developers are on the project.
Please visit Contact
MIT License © Adam Pedley