A multi-platform .NET UI framework
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update PR template Feb 9, 2019
.ncrunch Make ncrunch run again. Jan 16, 2019
build Switch to custom-built skia Jan 23, 2019
native/Avalonia.Native #2061 fix start minimized bug Dec 16, 2018
nukebuild Use '0000000' for build number formatting and "cibuild" because it's … Jan 26, 2019
packages/Avalonia EmbedReference is not needed anymore Dec 6, 2018
samples Merge branch 'master' into fixes/2191-tabcontrol-contentcontrolmixin Jan 18, 2019
scripts replace script also replaces direct2d Jan 29, 2019
src Merge branch 'master' into fixes/2260-image-sizing Feb 15, 2019
tests Merge branch 'master' into fixes/2260-image-sizing Feb 15, 2019
.editorconfig Use modified .editorconfig from corefx Jul 7, 2018
.gitattributes Initial commit Dec 5, 2013
.gitignore Switched to post-processing nuget packages from AggregatePackage SDK Dec 6, 2018
.gitmodules Switched to post-processing nuget packages from AggregatePackage SDK Dec 6, 2018
.nuke Switched build to Nuke Dec 1, 2018
Avalonia.sln Added Avalonia.ReactiveUI.UnitTests to solution. Jan 25, 2019
Avalonia.sln.DotSettings Generate asset resource info with paths Nov 14, 2018
Avalonia.v3.ncrunchsolution Make ncrunch run again. Jan 16, 2019
Directory.Build.props Switched to post-processing nuget packages from AggregatePackage SDK Dec 6, 2018
NuGet.Config Added cake build scripts Aug 16, 2016
Settings.StyleCop Stylecop fixes. Dec 4, 2014
azure-pipelines.yml temporary allow pr build to publish Jan 12, 2019
build-native.sh Add C++11 override specifier to be explicit about overrides Oct 28, 2018
build.ps1 Switched build to Nuke Dec 1, 2018
build.sh Switched build to Nuke Dec 1, 2018
dirs.proj Fix package versions. Oct 28, 2018
global.json Updated MSBuild.Sdk.Extras version. Jan 12, 2019
licence.md Added licence.md Dec 9, 2014
readme.md Update readme.md Jan 18, 2019



Gitter Chat Build Status (Win, Linux, OSX) Open Collective NuGet MyGet
Gitter Build Status Backers on Open Collective Sponsors on Open Collective NuGet MyGet


Avalonia is a WPF-inspired cross-platform XAML-based UI framework providing a flexible styling system and supporting a wide range of OSs: Windows (.NET Framework, .NET Core), Linux (GTK), MacOS, Android and iOS.

Avalonia is currently in beta which means that the framework is generally usable for writing applications, but there may be some bugs and breaking changes as we continue development.

Control catalog Desktop platforms Mobile platforms

Getting Started

Avalonia Visual Studio Extension contains project and control templates that will help you get started. After installing it, open "New Project" dialog in Visual Studio, choose "Avalonia" in "Visual C#" section, select "Avalonia .NET Core Application" and press OK (screenshot). Now you can write code and markup that will work on multiple platforms!

For those without Visual Studio, starter guide for .NET Core CLI can be found here.

Avalonia is delivered via NuGet package manager. You can find the packages here: (stable(ish), nightly)

Use these commands in Package Manager console to install Avalonia manually:

Install-Package Avalonia
Install-Package Avalonia.Desktop

Bleeding Edge Builds

Try out the latest build of Avalonia available for download here: https://ci.appveyor.com/project/AvaloniaUI/Avalonia/branch/master/artifacts

or use nightly build feeds as described here: https://github.com/AvaloniaUI/Avalonia/wiki/Using-nightly-build-feed


As mentioned above, Avalonia is still in beta and as such there's not much documentation yet. You can take a look at the getting started page for an overview of how to get started but probably the best thing to do for now is to already know a little bit about WPF/Silverlight/UWP/XAML and ask questions in our Gitter room.

There's also a high-level architecture document that is currently a little bit out of date, and I've also started writing blog posts on Avalonia at http://grokys.github.io/.

Contributions are always welcome!

Building and Using

See the build instructions here.


Please read the contribution guidelines before submitting a pull request.


This project exists thanks to all the people who contribute. [Contribute].


Thank you to all our backers! 🙏 [Become a backer]


Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]