TopGit
GitHub Repo Review

Avalonia UI: Cross-Platform .NET Framework

AvaloniaUI/Avalonia
ATopGit review image for AvaloniaUI/Avalonia
Review by Topgit.dev for AvaloniaUI/Avalonia, with GitHub repository stats and README context.
Quick verdict

Avalonia UI is a cross-platform XAML framework that lets .NET developers write one codebase and ship it to Windows, macOS, Linux, iOS, Android, and WebAssembly. It earns the comparison to WPF: bindings, styling, and MVVM feel familiar, but the rendering pipeline is Avalonia's own, not a WPF port. Worth adopting if your team already thinks in XAML and wants one UI layer instead of three.

Stars
★ 31.7k
Forks
⑂ 2.9k
Contributors
👥 679
Language
C#
License
MIT
Topic
Mobile
Updated
Oct 2026
Homepage
GitHub

What is Avalonia UI

Avalonia UI is an open-source, MIT-licensed .NET framework that renders its own controls instead of wrapping each platform's native widgets, so one XAML codebase produces the same output on Windows, macOS, Linux, iOS, Android, and WebAssembly. It follows the MVVM pattern and a CSS-like styling system XAML developers already know. The README calls it mature and production ready, citing Schneider Electric, Unity, JetBrains, and GitHub as users.

Key features and platform support

  • ✓Own rendering engine draws controls directly rather than wrapping native OS widgets, so the same XAML renders consistently across Windows, macOS, Linux, iOS, Android, and WebAssembly.
  • ✓CSS-like styling system with selectors, so you theme controls the way you'd write CSS instead of juggling WPF resource dictionaries alone.
  • ✓MVVM pattern support out of the box, matching what most XAML and WPF developers already use.
  • ✓XAML markup close enough to WPF that the project calls itself WPF's spiritual successor, though it says plainly it is not a 1:1 copy.
  • ✓Nightly builds track the current master branch, giving early access to fixes ahead of the NuGet release — the README says many users actually prefer this feed.
  • ✓Distributed as NuGet packages (Avalonia, Avalonia.Desktop, and others) rather than a standalone installer.
  • ✓A commercial add-on, Avalonia XPF, licensed per-app per-platform, enables existing WPF applications to function on macOS and Linux while requiring minimal or no modifications.
How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history ↗

Who uses Avalonia UI

  • •Teams porting an existing WPF desktop app to macOS or Linux without a full rewrite.
  • •.NET shops that want one XAML codebase to cover desktop, mobile, and a WebAssembly build of the same app.
  • •Companies named in the project's own showcase, including Schneider Electric, Unity, JetBrains, and GitHub, per the README.
  • •Developers building embedded or kiosk-style UIs where a native XAML renderer beats a browser wrapper.

Setting up Avalonia in your IDE

No standalone installer here — Avalonia ships as NuGet packages. From the Package Manager console you run `Install-Package Avalonia` and `Install-Package Avalonia.Desktop` to pull in the core framework and the desktop backend. Which IDE you use changes what you get next. VS Code needs the Avalonia for Code extension for XAML previewing, completion, diagnostics, and navigation. Visual Studio 2022 and 2026 get an official Avalonia extension with project and control templates plus a live XAML previewer. JetBrains Rider supports Avalonia out of the box for completion, inspections, and refactoring, but live XAML previewing needs a third-party, community-maintained plugin called AvaloniaRider, installed from a separate plugin repository URL — it isn't bundled with Rider's own Avalonia support.

Your first Avalonia application

The README doesn't walk through a first-app tutorial inline — it points you to the official Get Started guide and a starter tutorial on the docs site instead. Beyond that, Avalonia maintains a separate Avalonia.Samples repository with a range of working examples to clone and run rather than snippets to copy from the main README. If you're moving from WPF, the docs also carry a dedicated comparison page, and a breaking-changes page covers what moved between Avalonia 11 and Avalonia 12 — worth reading if a sample or tutorial predates your installed version.

Why developers choose Avalonia

  • ✓Familiar to any WPF developer — bindings, styles, and XAML syntax carry over, so the learning curve is shallower than adopting a totally new UI paradigm.
  • ✓One styling system across every target platform, since Avalonia draws its own controls instead of delegating to native widget toolkits per OS.
  • ✓Nightly builds give you a fast-moving feed of fixes if you're willing to trade some stability for it.
  • ✓MIT license, so there's no royalty or per-seat cost to use the core framework commercially.
  • ✓A commercial escape hatch, Avalonia XPF, exists if you have an existing WPF codebase and want cross-platform reach without a rewrite — though that product itself is paid.

Known limitations and trade-offs

  • △XAML previewing in JetBrains Rider isn't native — it depends on a third-party, community-maintained plugin, so preview support can lag behind Rider or Avalonia releases.
  • △The README doesn't document a bug bounty program; security fixes rely on responsible email disclosure rather than a formal rewards process.
  • △Nightly builds are explicitly less stable than the NuGet release, so choosing that feed trades reliability for speed.
  • △Moving from WPF isn't a drop-in swap: the project says it's 'not a 1:1 copy' of WPF, so some WPF code needs rework even though the concepts transfer.
  • △Running an existing WPF app unchanged on macOS and Linux, rather than rewriting it in Avalonia, requires the separate, paid Avalonia XPF product — it isn't part of the free, MIT-licensed framework.
View on GitHub ↗Homepage ↗

Alternatives to Avalonia

.NET MAUI — Microsoft's own cross-platform UI framework for .NET, and the first comparison worth checking if you want first-party support.Uno Platform — another XAML-based, multi-platform .NET UI framework aimed at the same WPF-to-cross-platform migration path as Avalonia.WPF — still the right call if you only ever target Windows and don't need macOS, Linux, or WebAssembly output.

Frequently asked questions

What platforms does Avalonia UI support?

Avalonia UI targets Windows, macOS, Linux, iOS, Android, and WebAssembly from a single XAML codebase, since it renders its own controls instead of wrapping each platform's native widget set.

Is Avalonia UI free and open source?

Avalonia UI is free and open source under the MIT license, so it can be used in commercial projects without royalties. The separate Avalonia XPF product, which runs existing WPF apps on macOS and Linux, is a paid, commercial add-on.

How does Avalonia compare to .NET MAUI?

Avalonia UI and .NET MAUI both target cross-platform .NET apps, but Avalonia leans on WPF-style XAML, styling, and MVVM patterns, making it the more familiar pick for developers coming from a WPF background rather than a mobile-first .NET app.

Can existing WPF applications run on Avalonia?

Existing WPF applications aren't a drop-in fit for Avalonia UI itself — the project calls itself WPF's spiritual successor but says it 'isn't a 1:1 copy.' For running WPF apps unchanged on macOS and Linux, AvaloniaUI's separate commercial product, Avalonia XPF, is built for that job.

What IDEs support Avalonia development?

Avalonia UI supports Visual Studio Code, Visual Studio 2022 and 2026, and JetBrains Rider. VS Code and Visual Studio get official extensions with built-in XAML previewing; Rider has code completion out of the box but needs the community-maintained AvaloniaRider plugin for live XAML previews.

Is Avalonia production ready for commercial applications?

Avalonia UI's own README describes the framework as mature and production ready, and names Schneider Electric, Unity, JetBrains, and GitHub as companies using it, according to the project's showcase.

The problem it solves

XAML developers who already know WPF face a hard choice when a client asks for macOS or Linux support: rewrite the UI in a different framework and language, or maintain two parallel codebases. Avalonia UI exists specifically to remove that fork — it keeps the same XAML/MVVM mental model but replaces WPF's Windows-only rendering with its own cross-platform renderer, so the styling and binding code a WPF team already wrote doesn't have to be thrown away to reach macOS, Linux, mobile, or the browser.

Who should try it — and who should skip

Try Avalonia if your team already writes WPF and needs the same app running on macOS, Linux, iOS, Android, or in a browser via WebAssembly without a full UI rewrite — the XAML and MVVM knowledge you already have carries over directly. Skip it if you're starting a brand-new project with no XAML background: .NET MAUI ships from Microsoft with more first-party tooling, and you'd be learning Avalonia's styling quirks for no migration payoff. Also skip it if live XAML previewing in Rider is a hard requirement, since that depends on a community plugin rather than built-in support.

Related repositories

Source & attribution

Facts and quotes are drawn from the AvaloniaUI/Avalonia GitHub repository (github.com/AvaloniaUI/Avalonia), including its README and project showcase.

GitHub data · last synced Aug 15, 2026Reviewed by Henry
← Back to TopGit

Is Avalonia worth your time?

ChatGPT, Claude and Perplexity can all read this page. Ask one of them what it makes of Avalonia.

GitHub