Calcium is an MVVM toolkit for UWP, WPF, Windows Phone, and Xamarin apps. It provides much of what you need to rapidly build sophisticated yet maintainable apps

Get Started

More information about Calcium can be found at

Use NuGet to install Calcium in your project via issuing the following command in the package manager console:
Install-Package Calcium

Get up to the minute news on Calcium at
Follow Calcium on Facebook

Calcium is a project by Daniel Vaughan and Katka Vaughan

Calcium for Xamarin.Forms

Calcium for Xamarin.Forms

Xamarin.Forms is now supported. Read more here
With Calcium for Xamarin you can implement a cross-platform Application Bar component using the Xamarin Forms native rendering API with Menu Item support that works on iOS, Android, and Windows Phone; and which offers more features than the built-in Windows Phone Application Bar.

With Calcium you can place images anywhere in a shared project as Content resources like in Windows Phone, and consume them in the same way across all three platforms.

Use Calcium in conjunction with T4 templates to enable localizability for your Android app.

Extend beyond current Xamarin Forms API capabilities to implement a quasi-data-template selector to materialize viewmodels in an MVVM compatible way.

Calcium for Windows Phone

Calcium for Windows Phone is a consolidation of the infrastructure code that has been written for the book Windows Phone 7.5 Unleashed, and is already used by a number of published apps. Calcium for Windows Phone is a light weight framework for incorporating the main features that every app needs. Unlike Calcium for WPF and Silverlight, Calcium for Windows Phone does not depend on Prism and has a smaller footprint, more suitable for the mobile platform.

Calcium Screenshot

Some of Calcium for Windows Phone features include:
  • A user options system that allows you to add a settable option to an options page, with a single line of code.
  • A bindable application bar with toggle buttons and menu items, hyperlink button/menu items, which allows you to host multiple application bars in a Pivot.
  • Built-in support for localization. Bindable resources allows the user to change the interface language at run-time.
  • An IoC container and DI infrastructure, and templates to allow you to hide or show a Purchase link in your app depending on the • Trial state of your app and so forth.
  • Templates for Views with ViewModels.
  • Attribute based state persistence system.
  • Message service that allows you to display messages and ask the user questions from your ViewModel.
  • Launchers and Choosers abstraction layer.
  • Input Validation system, with styles customized for displaying validation errors.

Calcium for WPF

Calcium for WPF consists of a client application and server based WCF services, which allow interaction and communication between clients. Out of the box, Calcium comes with a host of modules and services, and an infrastructure that is ready to use in your next application.

The following is a list of just some of the features of Calcium for WPF:
  • Visual Studio templates for instantly creating Calcium projects, including client applications, MVVM Module Templates, and server WCF host projects. (C# and VB.NET!)
  • Module Manager for enabling or disabling of modules at runtime.
  • Theme Support (with two themes included)
  • Duplex messaging services for interacting with the user from the client or server using the same API. Interact with the user using Message Boxes from the server!
  • A Command Service to associate WPF ICommands with content interfaces that only become active when an active view or viewmodel implements the interface.
  • Region Adapters for ToolBars and Menus.
  • Client-server logging ready to work out-of-the-box.
  • Includes modules, such as a Web Browser, Text Editor, Output Window, and many more.
  • Tabbed interface with dirty file indication (reusable across modules).
  • A User Affinity module that assists collaboration with other users of the application.
  • Undo/Redo/Repeat task management system.
  • And many more!

Calcium Screenshot

For further information about this project please see

Last edited Oct 2 at 11:41 PM by DanielVaughan, version 44