• Stars
    star
    708
  • Rank 61,402 (Top 2 %)
  • Language
    C#
  • License
    Apache License 2.0
  • Created over 9 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Open source MVVM framework for Web Apps

Component-based MVVM framework for ASP.NET

License Gitter GitHub Actions NuGet

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 4.2.* DotVVM.Owin 4.2.*
Minimum runtime version .NET 6.0 .NET 4.7.2
Minimum ASP.NET version ASP.NET Core 6.0 OWIN 4.2.2

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 documentation 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

More Repositories

1

infrastructure

C#
56
star
2

dotvvm-samples-webforms-migration

A sample migration of ASP.NET Web Forms app to .NET Core using DotVVM
JavaScript
23
star
3

dotvvm-dynamic-data

Dynamic Data implementation for DotVVM
C#
20
star
4

dotvvm-contrib

Official repository with community contributions for DotVVM
C#
14
star
5

dotvvm-samples-checkbook

Sample DotVVM web app
C#
13
star
6

selenium-utils

Web UI testing framework base on Selenium.WebDriver and Selenium.Support.
C#
11
star
7

dotvvm-docs

DotVVM documentation
C#
10
star
8

dotvvm-samples-northwind

A larger line of business application in DotVVM
C#
7
star
9

dotvvm-samples-blazingpizza

Rewrite of the popular BlazingPizza sample for Blazor
C#
7
star
10

openevents

Open source event registration application
C#
6
star
11

dotvvm-electron

C#
5
star
12

dotvvm-samples-weather-raspberry

Weather Station application using BME280 sensor running on Raspberry PI
JavaScript
4
star
13

dotvvm-presentations

JavaScript
3
star
14

dotvvm-samples-combo-with-webforms

Sample application demonstrating how to combine DotVVM with existing ASP.NET Web Forms application
C#
3
star
15

dotvvm-samples-combo-with-mvc

C#
3
star
16

csprojmigrator

CSPROJ migration utility from VS 2017 RC to VS 2017 RC Refresh
C#
2
star
17

grunt-resx-compile-task

Grunt task that generates C# class from a RESX file
JavaScript
2
star
18

dotvvm-samples-weeklyplanner

Sample for REST API integration (work in progress)
C#
2
star
19

dotvvm-extension-vscode

Visual Studio Code extension for DotVVM
TypeScript
2
star
20

dotvvm-samples-azuread-auth

Azure Active Directory authentication sample for DotVVM
C#
2
star
21

dotvvm-hands-on-lab

1
star
22

dotvvm-webforms

A set of controls that help with using DotVVM and ASP.NET Web Forms in the same application
C#
1
star
23

dotvvm-minutes

Sample code for DotVVM Minutes video series
JavaScript
1
star
24

dotvvm-samples-2.0

Demos from DotVVM 2.0 Announcement
C#
1
star
25

dotvvm-samples-wingtip-toys

Sample app for Hands-on workshop on migration of ASP.NET Web Forms app to .NET Core with DotVVM
JavaScript
1
star
26

grunt-runtime-t4-template-task

Grunt tasks that generates C# class from Runtime Text Template to be used at runtime.
JavaScript
1
star
27

dotvvm-benchmarks

C#
1
star
28

dotvvm-samples-simpleforum

Simple discussion board app in DotVVM on .NET Core
C#
1
star
29

dotvvm-samples-todo-pwa

C#
1
star
30

dotvvm-samples-gridview-dynamic

Sample of using GridView with a dynamic SQL queries
C#
1
star
31

dotvvm-samples-js-integration

JavaScript
1
star
32

dotvvm-samples-autoui

Auto UI samples
C#
1
star
33

dotvvm-kiosk

C#
1
star
34

dotvvm-coffee

Samples from DotVVM Coffee Video Series
C#
1
star
35

dotvvm-diagnostics-server-side-cache

C#
1
star
36

cms-core

C#
1
star
37

dotvvm-maui

Host of DotVVM in MAUI WebView
C#
1
star
38

dotvvm-samples-academy

DotVVM Academy sample application
C#
1
star