C# JavaScript TypeScript Other
Permalink
Failed to load latest commit information.
src IBaseGridViewDataSet support in controls Feb 24, 2017
.editorconfig Added .editorconfig file. Dec 29, 2016
.gitattributes Initial tech-demo Nov 5, 2014
.gitignore Removed .vs folder Dec 29, 2016
LICENSE Initial commit Nov 5, 2014
README.md Readme updated Jan 5, 2017

README.md

DotVVM = HTML + C#

.NET-based Framework for Modern Web Apps

license Join the chat at https://gitter.im/riganti/dotvvm

TFS Build:

DotVVM is an ASP.NET framework that lets you build line-of-business applications and SPAs without writing tons of JavaScript code. You only have to write a viewmodel in C# and a view in HTML. DotVVM will do the rest for you.

DotVVM brings full MVVM experience and it uses KnockoutJS on the client side. It handles the client-server communication, validation, localization, date & time formatting on the client side, SPAs and much more.

It is open source, it supports both OWIN and ASP.NET Core and it runs on .NET Framework, .NET Core and Mono. It also offers a free extension for Visual Studio 2015 with IntelliSense and other useful features which make the development really easy and productive.


How It Works?

The Views in DotVVM use HTML syntax with controls and data-bindings.

<div class="form-control">
  <dot:TextBox Text="{value: Name}" />
</div>
<div class="form-control">
  <dot:TextBox Text="{value: Email}" />
</div>
<div class="button-bar">
  <dot:Button Text="Submit" Click="{command: Submit()}" />
</div>

The ViewModels are plain C# objects. You can call public methods from the View.

public class ContactFormViewModel
{
  public string Name { get; set; }
  public string Email { get; set; }
  public void Submit()
  {
    ContactService.Submit(Name, Email);
  }
}

You just need to know C#, HTML and CSS. For most scenarios you don't have to write any JavaScript code.


Features of DotVVM (Open Source & Free for Everyone)


Need More? We have Commercial Controls!


How to Start

  1. Install the DotVVM for Visual Studio extension.

  2. Read the documentation.


More Info