mcpbeat

Avalonia Layout Zafiro

dokhacgiakhoa/avalonia-layout-zafiro

Guidelines for modern Avalonia UI layout using Zafiro.Avalonia, emphasizing shared styles, generic components, and avoiding XAML redundancy.

3k tokens
context cost
the whole folder, loaded on every use
6
files
instructions only
0
copies elsewhere
how many repositories repackaged it
505
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Dokhacgiakhoa/Agent-Skills-4-Vibe-Coding-CLI --skill avalonia-layout-zafiro

What comes with it

8 108 bytes besides the instruction
behaviors.md
components.md
containers.md
icons.md
themes.md

The instruction itself

6 sections, as written by the author

Avalonia Layout with Zafiro.Avalonia

> Master modern, clean, and maintainable Avalonia UI layouts.

> Focus on semantic containers, shared styles, and minimal XAML.

🎯 Selective Reading Rule

Read ONLY files relevant to the layout challenge!


📑 Content Map

| File | Description | When to Read |

|------|-------------|--------------|

| themes.md | Theme organization and shared styles | Setting up or refining app themes |

| containers.md | Semantic containers (HeaderedContainer, EdgePanel, Card) | Structuring views and layouts |

| icons.md | Icon usage with IconExtension and IconOptions | Adding and customizing icons |

| behaviors.md | Xaml.Interaction.Behaviors and avoiding Converters | Implementing complex interactions |

| components.md | Generic components and avoiding nesting | Creating reusable UI elements |


For a real-world example, refer to the Angor project:

/mnt/fast/Repos/angor/src/Angor/Avalonia/Angor.Avalonia.sln


✅ Checklist for Clean Layouts

  • [ ] Used semantic containers? (e.g., HeaderedContainer instead of Border with manual header)
  • [ ] Avoided redundant properties? Use shared styles in axaml files.
  • [ ] Minimized nesting? Flatten layouts using EdgePanel or generic components.
  • [ ] Icons via extension? Use {Icon fa-name} and IconOptions for styling.
  • [ ] Behaviors over code-behind? Use Interaction.Behaviors for UI-logic.
  • [ ] Avoided Converters? Prefer ViewModel properties or Behaviors unless necessary.

❌ Anti-Patterns

DON'T:

  • Use hardcoded colors or sizes (literals) in views.
  • Create deep nesting of Grid and StackPanel.
  • Repeat visual properties across multiple elements (use Styles).
  • Use IValueConverter for simple logic that belongs in the ViewModel.

DO:

  • Use DynamicResource for colors and brushes.
  • Extract repeated layouts into generic components.
  • Leverage Zafiro.Avalonia specific panels like EdgePanel for common UI patterns.

How to use it

Copy the folder

Take dokhacgiakhoa/avalonia-layout-zafiro from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.