Edit your app while it runs

Hot Reload applies XAML and C# changes to your running Avalonia app the moment you save. No rebuild, no restart, and your app keeps its state.

Trusted by .NET teams around the world

Features

Powerful features, yet simple to use.

XAML and C# together

Change markup, view models, and code-behind in the same session. Both apply to the running app without a rebuild.

Your app keeps running

Edited controls are rebuilt in place while everything else stays where it is. No restart, no losing your navigation or the screen you were styling.

Desktop and mobile

Reload apps on Windows, macOS, and Linux, with on-device support for iOS and Android.

Built on .NET Hot Reload

Driven by the official C# Hot Reload pipeline, the same mechanism dotnet watch uses. No IL rewriting, no custom debugger.

Works with your tools

Use dotnet watch from any terminal, or C# Hot Reload in Visual Studio and VS Code. A file-watcher mode covers XAML editing in Rider.

Ready for AI agents

Coding agents can restyle and rework a running app and see the result immediately. Pair it with dotnet watch and the DevTools MCP server.

CapabilitiesWhat reloads

What reloads, exactly

When you save, matching parts of your running app are rebuilt in place. No hand-waving: this is what the engine updates live.

Controls

Views with x:Class are rebuilt in place, keeping their position where possible. Adjust layout, add or remove elements, or edit text.

Styles

Application-level and control-level styles are re-applied, so selector and setter changes take effect at once.

Resource dictionaries

Merged dictionaries are reloaded and everything that depends on them refreshes. Change a brush or font size and every control using it updates.

Data templates

Templates are regenerated and the controls bound to them, list items included, are refreshed.

StaticResource references

Rewritten to DynamicResource during hot reload, so even static resource references pick up your edits without a restart.

Code-behind

Event handlers and method bodies in your .cs files apply live, under the standard .NET Hot Reload rules.

Run it from your tools

DriverXAMLC#
dotnet watchThe most reliable driver. It works the same in every editor and on every platform.
Visual StudioApply Code Changes, or turn on Hot Reload on File Save.
VS CodeVia the C# Dev Kit extension, or dotnet watch in the integrated terminal.
JetBrains Ridervia dotnet watchRider doesn't yet drive .NET metadata updates. Use dotnet watch from its terminal, or the built-in file watcher for XAML.
On deviceMobile

The same loop, on a real device

Edit the view and the view model, save, and watch an Android build update without a redeploy. Hot reload through dotnet watch on iOS and Android needs .NET 11 or later.

Setup

Simple installation and implementation.

Add the package, drop the control into your view, and bind it. There is no renderer to configure and no per-platform code to write.

1

Add the Hot Reload package to your app project (Avalonia 12 or newer). It registers itself, so no startup code is needed.

dotnet add package AvaloniaUI.DiagnosticsSupport.HotReload
2

Include your Avalonia UI license key in the executable project file .csproj

<ItemGroup>
    <AvaloniaUILicenseKey Include="YOUR_LICENSE_KEY" />
</ItemGroup>
HonestGood to know

What to expect

Hot reload tools earn trust by being clear about their limits. Here's where the edges are today, and we'd like to hear how it behaves in your app.

C# Hot Reload rules apply
Hot Reload is driven by .NET's C# Hot Reload. If .NET can't apply a change (a rude edit, like adding a field or changing a method signature), that change needs a restart.
Rider support is partial for now
JetBrains Rider's own hot reload doesn't drive the .NET metadata updates that XAML reloading depends on. Run your app under dotnet watch from Rider's terminal, or enable the built-in file-system watcher for XAML edits.
Mobile works best on .NET 11
On iOS and Android, hot reload through dotnet watch requires .NET 11 or later.
Reloaded controls are rebuilt, not mutated
An edited control is rebuilt in place, so state that lives outside its XAML (like a scroll position held in the control itself) is reset. The rest of your app is untouched.
WebAssembly is not supported yet
Hot reload works on the desktop and mobile platforms. Browser (WebAssembly) targets are not currently supported.

Included with Plus and Pro

Hot Reload is part of Avalonia's paid tooling. Every Plus and above subscription includes it alongside DevTools, Parcel, and the IDE extensions. One subscription unlocks them all.

Customer stories

"Avalonia has a very strong community, and frankly is a joy to work with."

Bill Henning

CEO & Founder, Actipro Software

FAQ

Your questions,
answered.

Can't find what you need? We're here to help.

No. Unlike DevTools, Parcel and the IDE extensions, Hot Reload has no free Community edition. It is included with every Avalonia Plus, Pro and Enterprise subscription, and a trial lets you evaluate it before you buy.

The app keeps running and the rest of it is untouched, so you stay on the screen you were working on. An edited control is rebuilt rather than mutated, so state held inside that control outside its XAML, such as a scroll position, is reset when it reloads.

Yes. Hot Reload is driven by .NET's C# Hot Reload and inherits its rules. A rude edit, such as adding a field or changing a method signature, cannot be applied to a running process and needs a restart. XAML edits are not subject to those rules.

Not yet. Hot Reload supports the desktop and mobile platforms; WebAssembly targets are not currently supported.

Stop waiting on rebuilds

Hot Reload is included with every Avalonia Plus and Pro subscription, alongside DevTools, Parcel and the IDE extensions.