Faster prototyping with Turnkey

This article was moved to MDriven Wiki Faster prototyping with Turnkey

MDriven Turnkey is very fast when it comes to creating and changing systems. But nothing is ever fast enough.

When you use MDrivenDesigner you have the prototyping tool that can show you the actions and general flow in a WPF generated app – but it is not exactly the same as the html5 apps that you get with Turnkey.

Pressing the Cloud-button and uploading the model to Azure or wherever your MDrivenServer resides only takes a few seconds – but still – that is a few seconds.

Developing detailed information systems is grinding work – constant change – and acting on new ideas once you see the result of your initial change. We NEED and WANT the round-trip to be insanely tight.


We are aiming for a Local Turnkey that is just as fast as the prototyper for WPF.


Presenting the Local TurnkeyPrototyper

This is what you need:

1. A local IIS with IIS Management Services installed. You add Management Services for IIS from Add/Remove Windows features.

2. Web Deploy for IIS (google to find Microsoft web deploy).  This gives you the Import/Export application menus from with IIS Admin:


3. MDrivenTurnkey – you get this from the build machine


This what you do:

1. In IIS Admin – Import application – find the downloaded MDrivenTurnkey zip:


Give the new turnkey-site a name:


2. Make a note of the url to the new site and also the disk search path to the site root. In my case:

http://localhost/MDrivenTurnkey2000 (http is fine)


3. Now we want to run our/any model in this local turnkey. Start MDrivenDesigner. Save the initial model somewhere nice – in my case C:\temp\TurnkeyPrototyping\SampleModleForAssociations.modlr

4. Press the “Play” button in MDrivenDesigner, click Local TurnkeyPrototyper, fill in the url and disk path to the site from above


Then press start system, followed by “Run Model and continue modelling”


The turnkey site needs access to your modlr file – MDrivenDesigner needs access to your site files.

Fix like this:

1. Give MDrivenDesigner access to site:

In my case properties/security on C:\inetpub\wwwroot2\MDrivenTurnkey2000


2. Give the site access to the modlr file library:

In my case properties/security on C:\temp\TurnkeyPrototyping

Add rights full control for account IIS_IUSRS (the account that execute your app pools)



What you have now is a local Turnkey site that does not rely on an MDrivenServer – instead it use XML-persistence and it saves the file next to your model:

* If you create <YourModel>_AssetsTK this will be mirrored into the local Turnkey

* You do not need to set up https – the local prototyping Turnkey suffice with http

* Whenever your Modlr file change – the local turnkey refresh the model

* Put different Modlr files in the same directory – they can use the same Turnkey (one at a time). This means that I can switch model super fast.

* If I want to develop Angular directives, controls and page overrides – I can do so in the _AssetsTK folder with fast local machine round-trip


If I have this:


and I change the ViewModel like this:


Save model – refresh web:



I create a SampleModleForAssociations_AssetsTK folder with a sub folder Content with a tkusercss.css – hit save in MDrivenDesigner (this triggers Turnkey to reload internals and mirror over the assets):



When I have iterated really FAST – I can seamlessly upload to a normal cloud Turnkey –  get a evolved db, get all the assets mirrored there and have the multi-user environment act exactly as my local prototype.

This entry was posted in CO-Unique, MDrivenDesigner, MDrivenTurnkey, Turnkey and tagged . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.