Antigravity-awesome-skills avalonia-layout-zafiro
Guidelines for modern Avalonia UI layout using Zafiro.Avalonia, emphasizing shared styles, generic components, and avoiding XAML redundancy.
install
source · Clone the upstream repo
git clone https://github.com/sickn33/antigravity-awesome-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sickn33/antigravity-awesome-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/antigravity-awesome-skills-claude/skills/avalonia-layout-zafiro" ~/.claude/skills/sickn33-antigravity-awesome-skills-avalonia-layout-zafiro && rm -rf "$T"
manifest:
plugins/antigravity-awesome-skills-claude/skills/avalonia-layout-zafiro/SKILL.mdsource content
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 |
|---|---|---|
| Theme organization and shared styles | Setting up or refining app themes |
| Semantic containers (, , ) | Structuring views and layouts |
| Icon usage with and | Adding and customizing icons |
| and avoiding Converters | Implementing complex interactions |
| Generic components and avoiding nesting | Creating reusable UI elements |
🔗 Related Project (Exemplary Implementation)
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.,
instead ofHeaderedContainer
with manual header)Border - Avoided redundant properties? Use shared styles in
files.axaml - Minimized nesting? Flatten layouts using
or generic components.EdgePanel - Icons via extension? Use
and{Icon fa-name}
for styling.IconOptions - Behaviors over code-behind? Use
for UI-logic.Interaction.Behaviors - 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
andGrid
.StackPanel - Repeat visual properties across multiple elements (use Styles).
- Use
for simple logic that belongs in the ViewModel.IValueConverter
DO:
- Use
for colors and brushes.DynamicResource - Extract repeated layouts into generic components.
- Leverage
specific panels likeZafiro.Avalonia
for common UI patterns.EdgePanel
When to Use
This skill is applicable to execute the workflow or actions described in the overview.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.