Code Quality Rank: L5
Programming language: C#
License: MIT License
Tags: Ui     Architecture     MVC     UWP     XAML     WPF     Mvvm     ViewModel     Model-View-ViewModel     WAF     PresentationModel     Module     Layered    
Latest version: v6.2.0

WPF Application Framework (WAF) alternatives and similar packages

Based on the "MVVM" category.
Alternatively, view WPF Application Framework (WAF) alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of WPF Application Framework (WAF) or a related project?

Add another 'MVVM' Package


Win Application Framework (WAF)

Successor of the WPF Application Framework

The Win Application Framework (WAF) is a lightweight Framework that helps you to create well-structured XAML Applications (MAUI, Xamarin, WPF, WinUI). It supports you in applying various architectural patterns:

How to get started?

  • WAF comes with realistic real-world sample applications. Please have a look at them. See Sample Applications below.
  • The Wiki provides further guidance.

Supported Platforms

  • **.Core* (.NET Standard 2.0 and .NET Framework 4.6.1): Support for all .NET based applications.
  • **.Wpf* (.NET Core 3.1 and .NET Framework 4.6.1): Extended support for Windows Presentation Foundation (WPF).

NuGet Packages

Package Usage Successor of
System.Waf.Core For all .NET based applications
System.Waf.Wpf For WPF applications waf
System.Waf.UnitTesting.Core For unit testing of all .NET based applications
System.Waf.UnitTesting.Wpf For unit testing of WPF applications waf.testing



  • Foundation
    • Cache: Provides support for caching a value.
    • Model: Base class that implements INotifyPropertyChanged.
    • ObservableListViewCore: Provide change notifications for sorting and filtering.
    • SynchronizingCollectionCore: Represents a collection that synchronizes all its items with the items of the specified original collection.
    • ThrottledAction: Throttling of multiple method calls to improve the responsiveness of an application.
    • ValidatableModel: Base class for a model that supports validation by implementing INotifyDataErrorInfo.
    • WeakEvent: Supports listening to events via a weak reference. This can prevent memory leaks. See WeakEvent page for more details.
  • Applications
    • (Async)DelegateCommand: An implementation of ICommand that delegates Execute and CanExecute.
    • RecentFileList: Most recently used (MRU) file list.
    • ViewModelCore: ViewModel base class with a simple approach to set the DataContext.


  • Foundation
    • DataErrorInfoSupport: Helper class for working with the legacy IDataErrorInfo interface.
  • Applications
  • Presentation
    • DispatcherHelper: Implementation for DoEvents.
    • ResourceHelper: Helper methods to manage resources in WPF.
    • ValidationHelper: Support for data validation tracking.
    • Converters
      • BoolToVisibilityConverter: Converts a boolean value to and from a Visibility value.
      • InvertBooleanConverter: Inverts a boolean value.
      • NullToVisibilityConverter: Null condition to return the associated Visibility value.
      • StringFormatConverter: Converts an object into a formatted string.
      • ValidationErrorsConverter: Converts a ValidationError collection to a multi-line string error message.
    • Services
      • FileDialogService: Shows an open or save file dialog box.
      • MessageService: Shows messages via the MessageBox.


Sample Applications

Name Type Description Links
Waf NewsReader XamarinForms A simple and fast RSS and ATOM news feed reader.Platforms: Android, UWP (Windows) and iOSArchitecture: Layering, MVVM, Async patternsSync feeds with multiple devices via MS Graph (OneDrive)OAuth authenticationResponsive UI with Navigation paneValidation (Add feed view)Localized (English and German)
Waf Writer WPF A simplified word processing application.Platforms: .NET 6Architecture: Layering, MVVMRibbon & Tabbed MDI (Multiple Document Interface)Animated transition between pagesMost recently used file list (MRU)Message service, Open/Save dialog servicePrint preview & Print dialogLocalized (English and German) Doc
Waf Book Library WPF Supports the user to manage his books. Borrowed books can be tracked by this application.Platforms: .NET 6Architecture: Layering, Extensions, MVVM, DMVVMEntity Framework with SQLiteValidation rulesSort & Filter in the DataGridReporting via WPF FlowDocument & Print support Doc
Waf Information Manager WPF A modular application that comes with a fake email client and an address book.Platforms: .NET 6Architecture: Layering, Modularization, MVVMOffice format ZIP container shared with all modules (Package API and DataContractSerializer)Validation rulesExtensible navigation view & context sensitive toolbarWizard dialog Doc
Waf Music Manager WPF Fast application that makes fun to manage the local music collection.WinRT, Media playback, File queries & properties, Async/await, Drag & Drop, Microsoft Store
Waf DotNetPad WPF Code editor to program with C# or Visual Basic..NET Compiler Platform, Roslyn, AvalonEdit, Auto completion, Async/await, Microsoft Store
Waf DotNetApiBrowser WPF Windows application for browsing the public API of .NET Assemblies and NuGet packages..NET Compiler Platform, Roslyn, AvalonEdit, NuGet, Async/await, Validation, ClickOnce