Skip to content

Open source MVVM framework for Web Apps

License

Notifications You must be signed in to change notification settings

symbiogenesis/dotvvm

 
 

Repository files navigation

DotVVM = HTML + C#

.NET-based MVVM Framework for 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 and 2017 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

About

Open source MVVM framework for Web Apps

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 72.6%
  • TypeScript 21.8%
  • JavaScript 5.5%
  • Other 0.1%