Dock.Avalonia
12.0.0.1
dotnet add package Dock.Avalonia --version 12.0.0.1
NuGet\Install-Package Dock.Avalonia -Version 12.0.0.1
<PackageReference Include="Dock.Avalonia" Version="12.0.0.1" />
<PackageVersion Include="Dock.Avalonia" Version="12.0.0.1" />
<PackageReference Include="Dock.Avalonia" />
paket add Dock.Avalonia --version 12.0.0.1
#r "nuget: Dock.Avalonia, 12.0.0.1"
#:package Dock.Avalonia@12.0.0.1
#addin nuget:?package=Dock.Avalonia&version=12.0.0.1
#tool nuget:?package=Dock.Avalonia&version=12.0.0.1
Dock
A docking layout system.
About
Dock is a docking layout system for Avalonia applications. Use of Dock is governed by the MIT License.
Key Features:
- ItemsSource Support: Bind document collections directly to DocumentDock for automatic document management
- Flexible Content Templates: Use DocumentTemplate for customizable document content rendering
- Optional Document Content Caching: Keep document views alive across tab switches via theme option (
CacheDocumentTabContent) - Deferred Content Materialization: Defer expensive content presenter work with shared or scoped timelines, per-host delay, and explicit ordering
- Multiple MVVM Frameworks: Support for ReactiveUI, Prism, ReactiveProperty, and standard MVVM patterns
- Comprehensive Serialization: Save and restore layouts with multiple format options (JSON, XML, YAML, Protobuf)
- Rich Theming: Fluent and Simple themes with full customization support
- Floating Windows: Detach documents and tools into separate windows
- Dependency Injection: First-class support for .NET DI containers
Building Dock
First, clone the repository or download the latest zip.
git clone https://github.com/wieslawsoltes/Dock.git
Build using .NET Core
Open up a terminal prompt and execute the commands.
Target frameworks: libraries multi-target net6.0, net8.0, and net10.0. Samples target net10.0 unless noted otherwise.
dotnet build src/Dock.Avalonia/Dock.Avalonia.csproj -c Release -f net10.0
Alternatively execute the repository build script which restores, builds and tests all projects. The scripts work on Windows and Unix like systems:
./build.sh # or .\build.cmd on Windows
NuGet
Dock is delivered as a NuGet package.
You can find the packages here NuGet and install the package like this:
Install-Package Dock.Avalonia
Install-Package Dock.Model.Mvvm
Install-Package Dock.Serializer.Newtonsoft
Install-Package Dock.Avalonia.Themes.Fluent
Install-Package Dock.Avalonia.Themes.Browser
Install-Package Dock.Controls.DeferredContentControl
Available NuGet packages:
Nightly Packages
Nightly builds are published to GitHub Packages on pushes to master. Versions use the nightly.YYYYMMDD.RUN suffix.
Add the GitHub Packages source (replace OWNER with the repository owner):
https://nuget.pkg.github.com/OWNER/index.json
Authenticate with a GitHub token that has read:packages:
dotnet nuget add source https://nuget.pkg.github.com/wieslawsoltes/index.json -n github -u YOUR_GITHUB_USERNAME -p YOUR_GITHUB_TOKEN --store-password-in-clear-text
Install pre-release packages:
Install-Package Dock.Avalonia -Pre
Install-Package Dock.Model.Mvvm -Pre
Install-Package Dock.Serializer.Newtonsoft -Pre
Install-Package Dock.Avalonia.Themes.Fluent -Pre
Install-Package Dock.Avalonia.Themes.Browser -Pre
Resources
Sample applications can be found under the samples directory which illustrate each approach in a working project:
DockXamlSample- XAML layouts with ItemsSource examplesDockMvvmSample- Full MVVM implementationDockReactiveUISample- ReactiveUI patternsDockDeferredContentSample- Deferred timeline scopes, delay, order, and presenter-host behaviorDockOfficeSample- Office-style workspaces with ReactiveUI navigationDockCodeOnlySample- Pure C# layoutsNotepad- Real-world text editor exampleVisualStudioDemo- Visual Studio-like interface- And many more specialized examples
License
Dock is licensed under the MIT license.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Avalonia (>= 12.0.0)
- Dock.Controls.DeferredContentControl (>= 12.0.0.1)
- Dock.Controls.ProportionalStackPanel (>= 12.0.0.1)
- Dock.Controls.Recycling (>= 12.0.0.1)
- Dock.MarkupExtension (>= 12.0.0.1)
- Dock.Model (>= 12.0.0.1)
- Dock.Settings (>= 12.0.0.1)
-
net8.0
- Avalonia (>= 12.0.0)
- Dock.Controls.DeferredContentControl (>= 12.0.0.1)
- Dock.Controls.ProportionalStackPanel (>= 12.0.0.1)
- Dock.Controls.Recycling (>= 12.0.0.1)
- Dock.MarkupExtension (>= 12.0.0.1)
- Dock.Model (>= 12.0.0.1)
- Dock.Settings (>= 12.0.0.1)
NuGet packages (16)
Showing the top 5 NuGet packages that depend on Dock.Avalonia:
| Package | Downloads |
|---|---|
|
Dock.Model.Avalonia
A docking layout system. |
|
|
Dock.Avalonia.Themes.Default
A docking layout system. |
|
|
AvalonStudio.Shell
Package Description |
|
|
Dock.Avalonia.Themes.Metro
A docking layout system. |
|
|
Dock.Avalonia.Themes.Fluent
A docking layout system. |
GitHub repositories (13)
Showing the top 13 popular GitHub repositories that depend on Dock.Avalonia:
| Repository | Stars |
|---|---|
|
LykosAI/StabilityMatrix
Multi-Platform Package Manager for Stable Diffusion
|
|
|
roslynpad/roslynpad
A cross-platform C# editor based on Roslyn and AvalonEdit
|
|
|
uxmal/reko
Reko is a binary decompiler.
|
|
|
kikipoulet/SukiUI
UI Theme for AvaloniaUI
|
|
|
VitalElement/AvalonStudio
Cross platform IDE and Shell
|
|
|
BAndysc/AvaloniaVisualBasic6
A recreation of the classic Visual Basic 6 IDE and language in C# with Avalonia
|
|
|
wieslawsoltes/Core2D
A multi-platform data driven 2D diagram editor.
|
|
|
BAndysc/Classic.Avalonia
Classic Theme and Controls for Avalonia
|
|
|
IvanJosipovic/KubeUI
Kubernetes User Interface
|
|
|
nesrak1/UABEANext
A research and modding tool for SerializedFiles and Asset Bundles
|
|
|
countincognito/Zametek.ProjectPlan
A simple, Open Source, and cross-platform desktop alternative to Microsoft Project for designing and creating project plans.
|
|
|
one-ware/OneWare
Next Generation IDE for Electronics Development
|
|
|
NeilMacMullen/kusto-loco
C# KQL query engine with flexible I/O layers and visualization
|
| Version | Downloads | Last Updated |
|---|---|---|
| 12.0.0.1 | 765 | 4/9/2026 |
| 12.0.0 | 465 | 4/8/2026 |
| 12.0.0-preview.1 | 116 | 4/7/2026 |
| 11.3.12 | 721 | 4/9/2026 |
| 11.3.12-preview.1 | 64 | 4/7/2026 |
| 11.3.11.22 | 4,966 | 3/12/2026 |
| 11.3.11.21 | 383 | 3/12/2026 |
| 11.3.11.20 | 2,070 | 3/10/2026 |
| 11.3.11.19 | 385 | 3/10/2026 |
| 11.3.11.18 | 525 | 3/9/2026 |
| 11.3.11.17 | 603 | 3/6/2026 |
| 11.3.11.16 | 5,258 | 2/24/2026 |
| 11.3.11.15 | 420 | 2/24/2026 |
| 11.3.11.14 | 2,524 | 2/19/2026 |
| 11.3.11.13 | 1,361 | 2/12/2026 |
| 11.3.11.12 | 382 | 2/11/2026 |
| 11.3.11.11 | 617 | 2/10/2026 |
| 11.3.11.10 | 360 | 2/10/2026 |
| 11.3.11.9 | 867 | 2/10/2026 |
| 11.3.11.8 | 686 | 2/9/2026 |