Use when designing or polishing the visual quality of an Avalonia app — choosing themes, building a design system, crafting beautiful screens, improving accessibility, motion, layout, or before shipping a UI. Routes to focused sub-skills for tokens, themes, components, motion, accessibility, layout patterns, icons, and pre-delivery review.
Scanned 9/10/2026
Install to Claude Code
npx -y skills add linuxdevel/Avalonia-skills --skill avalonia-pro-max --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Avalonia Pro Max?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/linuxdevel-avalonia-pro-max)More formats (shields.io, HTML) on the badges page.
---
name: avalonia-pro-max
description: Use when designing or polishing the visual quality of an Avalonia app — choosing themes, building a design system, crafting beautiful screens, improving accessibility, motion, layout, or before shipping a UI. Routes to focused sub-skills for tokens, themes, components, motion, accessibility, layout patterns, icons, and pre-delivery review.
---
# Avalonia Pro Max — Beautiful Avalonia UIs
## Purpose
`avalonia` skills teach you the framework. `avalonia-pro-max` teaches you to make it **look and feel professional**: design tokens, theme selection, component recipes, motion, accessibility, responsive layout, icons, and final QA.
This skill is the desktop/cross-platform counterpart to `ui-ux-pro-max`. Same priorities, but every rule is mapped to Avalonia 12 (XAML, FluentTheme, ControlThemes, pseudoclasses, AutomationProperties, etc.).
## When to Use
### Must use
- Building a new screen, window, or page
- Restyling an existing app or replacing the default look
- Choosing a theme library (FluentAvalonia, SukiUI, Semi, Material, ShadUI, Ursa…)
- Defining colors, typography, spacing, radius, elevation tokens
- Adding animations, transitions, hover/press states
- Implementing dark/light theme variants
- Reviewing UI before shipping or PR
- The user says "make this beautiful", "modernize", "polish", "looks bland"
### Recommended
- Migrating WPF visuals to Avalonia and wanting modern feel (combine with `avalonia-wpf-migration`)
- Cross-platform polish (desktop + mobile + web)
- Building a reusable component library
### Skip
- Pure data binding, MVVM plumbing, services, deployment — use base `avalonia` subskills
## Routing Table
| Task | Load sub-subskill |
|---|---|
| Design tokens, palettes, typography scale, spacing, theme variants, semantic color system | `avalonia-pro-max/design-system` |
| Picking and configuring a theme library (FluentAvalonia, SukiUI, Semi, Material, ShadUI, Ursa, Material.Avalonia) | `avalonia-pro-max/themes` |
| Production-ready XAML recipes: cards, dialogs, command bar, sidebar nav, settings page, forms, empty states | `avalonia-pro-max/components` |
| Transitions, keyframe animations, easing, hover/press feedback, page transitions, reduced-motion | `avalonia-pro-max/motion` |
| Contrast, focus rings, keyboard navigation, AutomationProperties, screen readers, dynamic font scaling | `avalonia-pro-max/accessibility` |
| Responsive design, breakpoints, AdaptiveLayout, NavigationView vs sidebar vs bottom nav, dashboards | `avalonia-pro-max/layout-patterns` |
| Icon libraries (Lucide, Material, FontAwesome, Heroicons), SVG (Svg.Skia), brand assets, image optimization | `avalonia-pro-max/icons-imagery` |
| Final QA before merge / release — checklist of every must-pass item | `avalonia-pro-max/review-checklist` |
| Show the user 2–3 design alternatives **as rendered Avalonia screens** in a browser gallery before implementation; user picks one in chat | `avalonia-pro-max/preview-server` |
## Workflow for "Build a beautiful Avalonia app/screen"
1. **Establish the design system** → `design-system`
Choose palette (semantic tokens), typography scale, spacing rhythm, radius scale, elevation. Persist as `Resources/Tokens.axaml` + theme-variant dictionaries.
2. **Pick a theme base** → `themes`
FluentTheme + community theme (or pure custom). The themes sub-skill has a recommendation matrix by app type.
3. **Build screens with recipes** → `components`
Use the recipe library — never hand-roll a card / dialog / nav from zero when a vetted pattern exists.
4. **Apply motion** → `motion`
Add `Transitions` to interactive controls, page transitions for navigation, respect `prefers-reduced-motion`.
5. **Verify accessibility** → `accessibility`
AutomationProperties, focus order, contrast 4.5:1, keyboard parity.
6. **Check responsive behavior** → `layout-patterns`
Test at 800/1280/1920 widths; mobile/tablet via Avalonia.Mobile.
7. **Run the review checklist** → `review-checklist`
Pre-merge audit. If anything fails, loop back.
### Optional: Show the user options first
If the user wants to **see and pick** between alternatives before you commit to a direction (e.g., "show me a few options", "what would this look like"), insert this **before step 3**:
→ `preview-server` — generate 3 variant `.axaml` files, render each via `Avalonia.Headless` to PNG (light/dark × wide/compact), serve a side-by-side HTML gallery. The user reviews in their browser and tells you which to build.
## Priority of Concerns
Same global priority as `ui-ux-pro-max`, mapped to Avalonia:
| # | Category | Avalonia Mechanism | Sub-skill |
|---|---|---|---|
| 1 | Accessibility | `AutomationProperties.*`, focus pseudoclasses, contrast | `accessibility` |
| 2 | Touch & interaction | Min hit-target via `Padding`/`MinHeight`, `:pointerover` / `:pressed` styles | `components`, `motion` |
| 3 | Performance | `CompiledBinding`, virtualization (`VirtualizingStackPanel`), `RenderOptions.BitmapInterpolationMode` | `components`, `layout-patterns` |
| 4 | Style selection | Theme library + ControlTheme + Style classes | `themes`, `design-system` |
| 5 | Layout & responsive | Grid `*` / `Auto`, `AdaptiveLayout`, `NavigationView.PaneDisplayMode` | `layout-patterns` |
| 6 | Typography & color | Theme-variant dictionaries, `DynamicResource`, type ramp | `design-system` |
| 7 | Animation | `Transitions`, `Animation`, `KeyFrame`, `IterationCount` | `motion` |
| 8 | Forms & feedback | Validation (`DataAnnotations` / `INotifyDataErrorInfo`), `Flyout`, error pseudoclasses | `components` |
| 9 | Navigation | `TabControl`, `SplitView`, FluentAvalonia `NavigationView` | `layout-patterns`, `components` |
| 10 | Charts & data | LiveCharts2, ScottPlot, OxyPlot | `components` |
## Recommended Stack for "Beautiful by Default"
A pragmatic starter pack that yields a polished app with minimal effort:
```xml
<!-- App.axaml -->
<Application.Styles>
<FluentTheme/>
<StyleInclude Source="avares://MyApp/Resources/Tokens.axaml"/>
<StyleInclude Source="avares://MyApp/Resources/ComponentStyles.axaml"/>
</Application.Styles>
```
NuGet:
- `Avalonia` 12.x
- `Avalonia.Themes.Fluent` (or `SukiUI` / `Semi.Avalonia`)
- `FluentAvalonia` — NavigationView, InfoBar, TeachingTip
- `Lucide.Avalonia` or `Material.Icons.Avalonia` — icons
- `Svg.Skia` — vector assets
- `Avalonia.Xaml.Behaviors` — declarative event triggers
The `themes` sub-skill explains alternatives by product type.
## Anti-Patterns (See Each Sub-skill for Detail)
- Hard-coded hex colors scattered across views — use `DynamicResource` + theme dictionaries
- Emoji as icons — use a vector icon library
- Removing focus rings to look cleaner — breaks keyboard a11y
- Same `Margin="10"` everywhere — use a 4/8 spacing scale
- Animating `Width`/`Height` instead of `RenderTransform` Scale — janky
- `StaticResource` for theme-variant brushes — won't update on variant change
- Forgetting `AutomationProperties.Name` on icon-only buttons
- Mixing FluentTheme + Material.Avalonia in the same app — visual inconsistency
- Custom controls without `:pointerover` / `:pressed` / `:disabled` / `:focus` styles
- One giant `Window` with no `UserControl` decomposition
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!