Skip to content
Open source MVVM framework for Web Apps
C# JavaScript TypeScript Liquid PowerShell Batchfile
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Added clear IIS folders script Aug 21, 2019
.editorconfig Fixed editor config configuration, Fixed xml comments warnings Jan 22, 2018
.gitattributes Initial tech-demo Nov 5, 2014
.gitignore Merge branch 'master' into features/templating-improvement Mar 9, 2019
LICENSE Added company name and year to the LICENCE Apr 30, 2019
README.md Build pipeline links updated Jul 24, 2019
code-of-conduct.md Readme and license updates Apr 28, 2019
contributing.md Readme and license updates Apr 28, 2019
dotnetSummer.md
roadmap.md Roadmap updated Apr 28, 2019

README.md

DotVVM

Component-based MVVM framework for ASP.NET

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

ASP.NET Core 2.2 ASP.NET Core 3.0 OWIN
Build status: ASP.NET Core 2.2 Build status: ASP.NET Core 3.0 Build status: OWIN

DotVVM lets you build interactive web UIs with just C# and HTML using the MVVM approach.

It simplifies building of line of business web apps and ships with many built-in controls like GridView, FileUpload, Validator and more.

How does DotVVM work?

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

The ViewModels are plain C# objects with properties and methods.

You can access the ViewModel properties using {value: Name} and call ViewModel methods using {command: Submit()}.

<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>
public class ContactFormViewModel
{
    [Required]
    public string Name { get; set; }

    [EmailAddress]
    public string Email { get; set; }

    public void Submit()
    {
        // ...
    }
}

DotVVM comes with many features including:

Getting started with DotVVM

Learn the basic principles of DotVVM in our DotVVM Academy tutorials.

The easiest way to start with DotVVM is to download DotVVM for Visual Studio and do File > New > Project.

You can also install DotVVM in existing ASP.NET projects and use it side-by-side with other ASP.NET frameworks (Web Forms, MVC, Razor Pages).

There is also dotnet new template for those who prefer command-line approach. You can get our free extension for Visual Studio Code.

Current status

DotVVM is used in production by hundreds of developers and companies. The first stable release was in June 2016.

ASP.NET Core OWIN
Current stable version DotVVM.AspNetCore 2.2.0 DotVVM.Owin 2.2.0
Minimum runtime version .NET Core 2.0 .NET 4.5.1
Minimum ASP.NET version ASP.NET Core 2.0 OWIN 3.0.1

You can find the plans for next releases in the roadmap.

Commercial components & tools

DotVVM framework is open source and will always be free to use. It's developed under Apache license.

There are also free extensions for Visual Studio and VS Code available. They are not open source, but they will also be free to use.

You can get more productive with DotVVM and support development of the framework by purchasing commercial components and tools developed by the creators of the framework:

  • Bootstrap for DotVVM brings more than fifty Bootstrap 3 and 4 controls that are easy to use and integrate well with DotVVM validation and data-bindings.
  • DotVVM Business Pack contains more than 30 enterprise-ready controls for large line of business web apps.
  • DotVVM Pro for Visual Studio offers more features than the free extensions - IntelliSense for data-binding expressions, real-time error checking and much more.

Get involved

We'll be glad to accept any contribution. It doesn't need to be a pull-request - you can help us by spreading the word about the project in a blog or a user group, fix a typo in a documentnation or send us your feedback and thoughts.

You can find more info in Contribution Guidelines. We kindly ask you to respect the Code of Conduct.

Feedback

Feedback is crucial to make DotVVM better. You can reach us at any time on our Gitter Chat.

.NET Foundation

This project is supported by the .NET Foundation.

Further reading

You can’t perform that action at this time.