[![Build Status](https://worldbeater.visualstudio.com/Citrus.Avalonia/_apis/build/status/worldbeater.Citrus.Avalonia)](https://worldbeater.visualstudio.com/Citrus.Avalonia/_build/latest?definitionId=1) ![netstandard](https://img.shields.io/badge/.NET%20Standard-2.0-green.svg) [![nuget](https://img.shields.io/nuget/v/Citrus.Avalonia.svg)](https://www.nuget.org/packages/Citrus.Avalonia) [![downloads](https://img.shields.io/nuget/dt/citrus.avalonia)](https://www.nuget.org/packages/Citrus.Avalonia) ![License](https://img.shields.io/github/license/worldbeater/avalonia.citrus.svg) ![Size](https://img.shields.io/github/repo-size/worldbeater/avalonia.citrus.svg) ### Citrus Avalonia experimental theme. ### Getting Started The easiest way to get started is to install the library as a NuGet package: ```powershell Install-Package Citrus.Avalonia # Or 'dotnet add package Citrus.Avalonia' ``` Then, reference the preffered theme from your `App.xaml` file: ```xml ``` Done! Now the templates of all default controls are updated. See the [sandbox project](https://github.com/worldbeater/Citrus.Avalonia/blob/master/src/Citrus.Avalonia.Sandbox/MainWindow.xaml) for more examples. See [`StyleManager.cs`](https://github.com/worldbeater/Citrus.Avalonia/blob/master/src/Citrus.Avalonia.Sandbox/StyleManager.cs) to learn how to change color scheme at runtime. ### Getting Started without NuGet Another way to get started is to add this repo as a [submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules) to your existing git repository: ```sh mkdir ./external git submodule add git@github.com:worldbeater/Citrus.Avalonia.git ./external/citrus # Reference the ../external/citrus/src/Citrus.Avalonia/Citrus.Avalonia.csproj project then. # The ../external/citrus/src/Citrus.Avalonia.Sandbox/Citrus.Avalonia.Sandbox.csproj is # the sandbox where you can browse the markup samples. ``` ### Technologies and Tools Used - AvaloniaUI cross-platform XAML-based GUI framework - ReactiveUI.Fody for MVVM implementation in the sandbox project - ReactiveUI.Validation for `INotifyDataErrorInfo` validations - JetBrains Rider cross-platform C# IDE