Dock.Model.Avalonia
12.0.0.1
dotnet add package Dock.Model.Avalonia --version 12.0.0.1
NuGet\Install-Package Dock.Model.Avalonia -Version 12.0.0.1
<PackageReference Include="Dock.Model.Avalonia" Version="12.0.0.1" />
<PackageVersion Include="Dock.Model.Avalonia" Version="12.0.0.1" />
<PackageReference Include="Dock.Model.Avalonia" />
paket add Dock.Model.Avalonia --version 12.0.0.1
#r "nuget: Dock.Model.Avalonia, 12.0.0.1"
#:package Dock.Model.Avalonia@12.0.0.1
#addin nuget:?package=Dock.Model.Avalonia&version=12.0.0.1
#tool nuget:?package=Dock.Model.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.Avalonia (>= 12.0.0.1)
- Dock.Model (>= 12.0.0.1)
- Dock.Settings (>= 12.0.0.1)
-
net8.0
- Avalonia (>= 12.0.0)
- Dock.Avalonia (>= 12.0.0.1)
- Dock.Model (>= 12.0.0.1)
- Dock.Settings (>= 12.0.0.1)
- System.Text.Json (>= 10.0.2)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Dock.Model.Avalonia:
| Package | Downloads |
|---|---|
|
Spice86
Reverse engineer and rewrite real mode dos programs |
|
|
SukiUI.Dock
https://github.com/kikipoulet/SukiUI |
|
|
Pretty.Avalonia
https://gitee.com/techgr-studio |
GitHub repositories (6)
Showing the top 6 popular GitHub repositories that depend on Dock.Model.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
|
|
|
BAndysc/AvaloniaVisualBasic6
A recreation of the classic Visual Basic 6 IDE and language in C# with Avalonia
|
|
|
BAndysc/Classic.Avalonia
Classic Theme and Controls for Avalonia
|
| Version | Downloads | Last Updated |
|---|---|---|
| 12.0.0.1 | 41 | 4/9/2026 |
| 12.0.0 | 65 | 4/8/2026 |
| 12.0.0-preview.1 | 42 | 4/7/2026 |
| 11.3.12 | 47 | 4/9/2026 |
| 11.3.12-preview.1 | 46 | 4/7/2026 |
| 11.3.11.22 | 832 | 3/12/2026 |
| 11.3.11.21 | 115 | 3/12/2026 |
| 11.3.11.20 | 1,571 | 3/10/2026 |
| 11.3.11.19 | 116 | 3/10/2026 |
| 11.3.11.18 | 111 | 3/9/2026 |
| 11.3.11.17 | 143 | 3/6/2026 |
| 11.3.11.16 | 266 | 2/24/2026 |
| 11.3.11.15 | 144 | 2/24/2026 |
| 11.3.11.14 | 177 | 2/19/2026 |
| 11.3.11.13 | 299 | 2/12/2026 |
| 11.3.11.12 | 133 | 2/11/2026 |
| 11.3.11.11 | 146 | 2/10/2026 |
| 11.3.11.10 | 123 | 2/10/2026 |
| 11.3.11.9 | 597 | 2/10/2026 |
| 11.3.11.8 | 126 | 2/9/2026 |