🚀 Welcome to MDriven Learn –  MDriven is now on Discord!  Don’t miss the latest Release Notes.
Introducing MDriven Turnkey
This page was created by Stephanie on 2023-06-14. Last edited by Wikiadmin on 2026-07-29.

MDriven Turnkey lets you build and run model-driven internet applications when you want to design the system in MDriven Designer and deliver it as a web application.

What MDriven Turnkey is

MDriven Turnkey is the application front end in the MDriven product line. You define the information, actions, rules, and user interface views in MDriven Designer, then run the application with Turnkey and MDrivenServer.

For example, you can model a rental domain with Car, Customer, and Rental contract classes. You can then define views for selecting a car and creating a rental contract, add rules that control valid reservations, and deploy the model to a Turnkey site. Turnkey provides the running web application for those modeled views and rules.

Turnkey is based on technologies documented by MDriven, including jQuery, Bootstrap, AngularJS, Blazor, the MDriven Framework, Azure, SQL Server, MySQL, and Postgres. Its web user interfaces use Bootstrap rendering to produce HTML5. The documented UI choices include MVC5/Razor or AngularJS on a screen-by-screen basis; other MDriven client approaches are described in Documentation:MDriven Product Line.

How the parts work together

A Turnkey application separates the concerns of the system from the implementation and presentation choices.

Area What you define or use Example
System Gist The domain model, actions, rules, and views that you create in MDriven Designer. Define that a rental contract refers to one customer and one car, and define an action to create the contract.
Modernity The runtime implementation supplied by the Turnkey motor and MDrivenServer. Deploy the model so the server can maintain the application data and execute its modeled behavior.
Fashion The HTML5 and CSS presentation, with the documented web UI approaches or WPF where applicable. Change CSS to match an organisation's visual identity without changing the rental-domain model.

This separation means you can keep the domain model focused on what the system must do while handling presentation changes in the UI layer.

Development loop

Use the following loop to turn a model into a running application:

  1. Create or open your model in MDriven Designer.
  2. Model the domain information and define the actions, rules, and ViewModels that users need.
  3. Connect MDriven Designer to the MDrivenServer used by the Turnkey site.
  4. Upload and deploy the model to the server.
  5. Open the Turnkey application in a browser and test the modeled views and actions.
  6. Refine the model or presentation and deploy the updated model again.

MDrivenServer receives models from MDriven Designer, maintains the configured database, implements client-to-client synchronization, and can execute periodic declarative server-side jobs that are defined in the model. Read Documentation:MDriven Product Line for the product-level description of MDrivenServer.

Turnkey development can also include front-end components when you need control of the front end. For business-specific technical development, MDriven Framework makes the model and ViewModels available as strongly typed C# code in Visual Studio. Use OCL for modeled expressions and rules; use C# when the implementation requires code outside the modeled rule.

Design and test the user interface

Turnkey includes Turnkey Live View for changing and testing the user interface while the application is running. Use it to shorten the feedback loop between a design change and the result in the application.

For example, when a rental-contract view needs a clearer layout, adjust the view and inspect the running result. Keep domain rules, such as whether a car can be reserved, in the model rather than relying only on visual cues in the page.

Model-level access control and validation help the application present only relevant actions and make rules visible to users. The Turnkey tutorial series includes examples of opting out of actions, class constraints, ViewModel validation, logged-in-user access, and AccessGroups. See Documentation:MDriven Turnkey Series.

Choose how to host a Turnkey site

You can obtain a new Turnkey site in one of these ways:

Option When to use it Next step
Subscribe to a site hosted by MDriven You want MDriven to set up the site in the MDriven Azure account. Follow the site-requesting and creation guidance from Documentation:Turnkey.
Host in your own Azure account You want the infrastructure in your Azure account. Follow Documentation:Hosting turnkey on my own Azure account.
Host on your own premises You need to operate Turnkey and MDrivenServer in-house. Follow Documentation:Set up MDriven Turnkey on premise.

For an on-premise installation, the setup guide explains the required MDrivenServer identification settings, the TurnkeySettings.xml file that lets the Turnkey application connect to MDrivenServer, and the MDriven Designer connection settings. Do not replace those configuration details with this introduction; follow the guide step by step.

Data ownership and subscription

For a subscribed Turnkey site, the application remains yours. MDriven states that there are no per-user fees or restrictions, and that you can retrieve your data and end the subscription. Additional performance requirements may incur additional costs. See Documentation:Starting with MDriven Turnkey for the documented subscription statement.

Start here

  1. Install and run the current MDriven Designer when working with Turnkey, as advised in Documentation:Starting with MDriven Turnkey.
  2. Choose a hosting option for the site.
  3. Create a small model and deploy it to verify the connection between MDriven Designer, MDrivenServer, and the Turnkey application.
  4. Continue with the practical tutorials in Documentation:MDriven Turnkey Series.

See also