Skip to content

mrnustik/dotvvm

 
 

Repository files navigation

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.4.0.1 DotVVM.Owin 2.4.0.1
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.

We have already started development of DotVVM 3.0 - everything is happenning in the v3-master branch.

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

About

Open source MVVM framework for Web Apps

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 60.8%
  • JavaScript 20.6%
  • TypeScript 18.3%
  • Liquid 0.2%
  • PowerShell 0.1%
  • Batchfile 0.0%