Home

Awesome

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?

Supported Platforms

NuGet Packages

PackageUsageSuccessor of
System.Waf.CoreFor all .NET based applications
System.Waf.WpfFor WPF applicationswaf
System.Waf.UnitTesting.CoreFor unit testing of all .NET based applications
System.Waf.UnitTesting.WpfFor unit testing of WPF applicationswaf.testing

Features

System.Waf.Core

System.Waf.Wpf

System.Waf.UnitTesting.Core

Sample Applications

NameTypeDescription
Waf NewsReaderMAUI<br/>.NET 8A simple and fast RSS and ATOM news feed reader.<br/><ul><li>Platforms: Android, Windows and iOS</li><li>Architecture: Layering, MVVM, Async patterns</li><li>Sync feeds with multiple devices via MS Graph (OneDrive)</li><li>OAuth authentication</li><li>Responsive UI with Navigation pane</li><li>Validation (Add feed view)</li><li>Localized (English and German)</li></ul>
Waf WriterWPF<br/>.NET 8A basic word processing application.<br/><ul><li>Architecture: Layering, MVVM</li><li>Ribbon & Tabbed MDI (Multiple Document Interface)</li><li>Animated transition between pages</li><li>Most recently used file list (MRU)</li><li>Message service, Open/Save dialog service</li><li>Print preview & Print dialog</li><li>Localized (English and German)</li><li>UI testing with FlaUI and execution via GitHub Actions</li></ul>
Waf Book LibraryWPF<br/>.NET 8Supports the user to manage books. Borrowed books can be tracked by this application.<br/><ul><li>Architecture: Layering, Extensions, MVVM, DMVVM</li><li>Entity Framework with SQLite</li><li>Validation rules</li><li>Sort & Filter in the DataGrid</li><li>Reporting via WPF FlowDocument & Print support</li><li>UI testing with FlaUI and execution via GitHub Actions</li></ul>
Waf Information ManagerWPF<br/>.NET 8A modular application that comes with a fake email client and an address book.<br/><ul><li>Architecture: Layering, Modularization, MVVM</li><li>Office format ZIP container shared with all modules (Package API and DataContractSerializer)</li><li>Validation rules</li><li>Extensible navigation view & context sensitive toolbar</li><li>Wizard dialog</li></ul>
Waf Music ManagerWPF<br/>.NET 8Fast application that makes fun to manage the local music collection.<br/>MS Store (MSIX), WinRT, Media playback, File queries & properties, Async/await, Drag & Drop
Waf DotNetPadWPF<br/>.NET 8Code editor for programming C# and Visual Basic.<br/>MS Store (MSIX), .NET Compiler Platform (Roslyn), AvalonEdit, Auto completion, Async/await
Waf File Hash GeneratorWinUI 3<br/>.NET 8Simple tool that generates the hash values of one or more files.<br/>MS Store (MSIX), Async, Progress, Drag & Drop