Sample project to demonstrate the functionalities of Avalon (and a bit of AvaloniaUI)
| .forgejo/workflows | ||
| Avalon.Sample | ||
| Avalon.Sample.Android | ||
| Avalon.Sample.Desktop | ||
| .gitignore | ||
| Avalon.Sample.sln | ||
| Directory.Packages.props | ||
| LICENSE | ||
| nuget.config | ||
| README.md | ||
| renovate.json | ||
Avalon
Avalon provides reusable features and components to kickstart crossplatform applications with AvaloniaUI and MAUI (later on).
| Library | Decription | AvaloniaUI | MAUI |
|---|---|---|---|
| Avalon.Core | Core library with basic cross-framework implementations and abstractions. | ✅ | ✅️ |
| Avalon.Views.Core | Core library containing basic view related implementations and abstractions. | ✅️ | ❌ |
| Avalon.Views.Navigation | Simple navigation service. | ✅ | ❌ |
| Avalon.Views.PopUp | (planned) Simple popup service. | ❌ | ❌ |
| Avalon.Views.Controls | (planned) Reusable pages and controls. | ❌ | ❌ |
Note: MAUI support is planned, but currenly not scheduled.
Note: Always use the .Avalonia or .MAUI packages.
Avalon.Views.Core
This library contains basic basic view related implementations and abstractions.
Features
ViewLocator
- Resolving and instantiating views and viewmodels
- Custom resolver may be used or Activator
ViewModelBase
Abstract base view model with usefull helper properties and methods.
IElement / IElementWithVm
Abstractions to be used for views/controls.