Sachssoft Sasopuls is a lightweight C# MVVM library that is AOT-/Native-friendly and suitable for both desktop applications and games.
It provides a compact, modern MVVM structure with additional features designed for fast development.
- Lightweight base model classes: e.g.
NotifyObject - Built-in commands such as
ActionCommandandTaskCommand ICommandRuleis an interface that defines a condition determining whether a command is allowed to execute- Communication between View and ViewModel:
Prompt, similar toReactiveUI.Interaction - Rich notification support:
PropertyChangedandCollectionChanged - Extended dirty tracking support: e.g. prompting the user on close if there are unsaved changes
- Selector support: e.g. for ComboBoxes or list-based UI elements
- Descriptor functionality: e.g. Enum integration with UI-friendly display names
- Basic localization support: culture-dependent labels and content
Sachssoft Sasopuls aims to help developers:
- process structured data more easily
- simplify mapping between data and ViewModel structures
- reduce repetitive boilerplate code
- speed up UI and configuration logic development
| Platform | Status | Requirements | NuGet |
|---|---|---|---|
| Core | ✅ Available | .NET 7.0 | |
| Avalonia | ✅ Available | .NET 7.0, Avalonia 11.0 | |
| WPF | 🚧 Planned | – | – |
Planned features include:
- Undo/Redo system implementation
- Extended change tracking
- Additional commonly used models and ViewModels
- Focus on performance, especially for game UI scenarios
- Additional platform support
- Clone the repository:
git clone https://github.com/sachssoft/Sachssoft.Sasopuls.git