Akbura.Templates 12.0.4-alpha.11

This is a prerelease version of Akbura.Templates.
dotnet new install Akbura.Templates@12.0.4-alpha.11
                    
This package contains a .NET Template Package you can call from the shell/command line.

Akbura Templates

Project and component templates for Avalonia applications built with Akbura.

Install

dotnet new install Akbura.Templates

For a local package, install its .nupkg instead:

dotnet new install ./artifacts/Akbura.Templates.VERSION.nupkg

Choose a template

Short name Output Starting point
akbura.app Desktop project Local state/hooks, AKCSS, and components.
akbura.mvvm Desktop project MVVM, native bindings, commands, and an Akbura view.
akbura.xplat Five-project solution Shared MVVM UI with Desktop, Browser, Android, and iOS hosts.
akbura.component Item A .akbura component for an existing project.
akbura.partial-component Item A .akbura component and matching .akbura.cs partial class.

The existing akbura.app remains the local-state example. The two MVVM templates demonstrate a MainViewModel with INotifyPropertyChanged and commands. Their MainView.akbura uses ${Binding ...}; x.DataType identifies the binding type, while the application composition root supplies the actual runtime DataContext. An ordinary {expression} in a component is C#, not an MVVM binding.

Create a local-state desktop app

dotnet new akbura.app -n MyApp
dotnet new akbura.app -n MyAppWithDI --di Microsoft.Extensions.DependencyInjection
dotnet new akbura.app -n MyAppWithSplat --di Splat.Locator

The default --di None adds no external container. This template demonstrates local state, responsive AKCSS utilities, and reusable components rather than the ViewModel/command design used by the two templates below.

Create a desktop MVVM app

dotnet new akbura.mvvm -n DemoDesktop
dotnet run --project DemoDesktop/DemoDesktop.csproj

The template restores packages automatically. Use --no-restore to defer that work:

dotnet new akbura.mvvm -n DemoReactive `
    --mvvm ReactiveUI `
    --di Microsoft.Extensions.DependencyInjection `
    --cpm true `
    --remove-view-locator true `
    --no-restore
dotnet restore DemoReactive/DemoReactive.csproj

Create a cross-platform solution

dotnet new akbura.xplat -n DemoCross
dotnet restore DemoCross/DemoCross.Desktop/DemoCross.Desktop.csproj
dotnet run --project DemoCross/DemoCross.Desktop/DemoCross.Desktop.csproj

akbura.xplat does not automatically restore the whole solution or install platform workloads. Build only the host supported by the current machine:

dotnet build DemoCross/DemoCross.Browser/DemoCross.Browser.csproj
dotnet build DemoCross/DemoCross.Android/DemoCross.Android.csproj
dotnet build DemoCross/DemoCross.iOS/DemoCross.iOS.csproj

Browser requires the .NET WebAssembly workload; Android requires the Android SDK and .NET Android workload; iOS requires a compatible macOS/Xcode and .NET iOS workload. Do not build the complete solution on a machine lacking mobile workloads. Browser/mobile debugging does not offer the desktop-only keyboard inspector UI.

To choose a page shell and another toolkit:

dotnet new akbura.xplat -n DemoMobile `
    --mvvm ReactiveUI `
    --di Splat.Locator `
    --cpm false `
    --main-view-page-type NavigationPage `
    --remove-view-locator true

Application options

Option Values Desktop MVVM default Cross-platform default
-f, --framework net10.0 net10.0 net10.0
-m, --mvvm CommunityToolkit, ReactiveUI CommunityToolkit CommunityToolkit
-av, --avalonia-version Avalonia package version Matched Avalonia version Matched Avalonia version
-akv, --akbura-version Akbura package version Package release version Package release version
-rvl, --remove-view-locator true, false false false
-cpm, --cpm true, false false true
--di None, Microsoft.Extensions.DependencyInjection, Splat.Locator None None
--no-restore Switch Restore runs Not available; no automatic restore
-page, --main-view-page-type None, ContentPage, TabbedPage, DrawerPage, NavigationPage Not available None

At the recorded source baseline, the defaults were Avalonia 12.0.4 and Akbura 12.0.4-alpha.10. Release automation stamps all application templates with the versions actually packed. Inspect dotnet new akbura.mvvm --help or dotnet new akbura.xplat --help for defaults of the installed package.

--mvvm selects the ViewModel implementation; --di independently selects how the application constructs and owns its services. --di None needs no container. --cpm true writes a root Directory.Packages.props and versionless project references; --cpm false writes shared versions in Directory.Build.props and disables inherited central package management. --remove-view-locator true removes the optional ViewLocator but keeps MVVM and the chosen page shell. Generated projects do not change a parent directory's MSBuild configuration.

Add a component

Run these item templates from an existing Akbura project:

dotnet new akbura.component -n ProfileCard --namespace MyApp.Components -o Components
dotnet new akbura.partial-component -n ProfileCard --namespace MyApp.Components -o Components

The partial-component template creates ProfileCard.akbura and ProfileCard.akbura.cs. Debug desktop builds can use Avalonia Developer Tools on F12 and the Akbura component inspector on Ctrl+F12; diagnostic dependencies are excluded from Release builds.

Template parity and update notes: CONTRIBUTING.md.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
12.0.4-alpha.11 0 9/27/2026
12.0.4-alpha.10 37 9/24/2026
12.0.4-alpha.9 43 9/23/2026
12.0.4-alpha.8 45 9/22/2026
12.0.4-alpha.7 44 9/21/2026
12.0.4-alpha.6 55 9/18/2026
12.0.4-alpha.5 65 9/14/2026
12.0.4-alpha.4 59 9/11/2026
12.0.4-alpha.3 75 9/10/2026
12.0.4-alpha.2 80 9/9/2026