avalonia-layout-zafiro – Design & UI skill for AI agents
Guidelines for modern Avalonia UI layout using Zafiro.Avalonia, emphasizing shared styles, generic components, and avoiding XAML redundancy.
Install the avalonia-layout-zafiro skill with one command
Pick the tool you use, copy the command and paste it in your terminal. The skill lands in that tool's skills folder and is ready in your next session.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/avalonia-layout-zafiro-20fed.tgz | tar xz -C ~/.claude/skills
Call it in Claude Code: /avalonia-layout-zafiro – then describe the task you want done.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/avalonia-layout-zafiro-20fed.tgz | tar xz -C ~/.codex/skills
Call it in Codex: $avalonia-layout-zafiro – then describe the task you want done.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/avalonia-layout-zafiro-20fed.tgz | tar xz -C ~/.hermes/skills
Call it in Hermes Agent: /avalonia-layout-zafiro – then describe the task you want done.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/avalonia-layout-zafiro-20fed.tgz | tar xz -C ~/.deepcode/skills
Call it in DeepSeek: /avalonia-layout-zafiro – then describe the task you want done.
SKILL.md 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!
---
The five guides below are bundled; the author-local Angor solution is not. Examples are partial and need the actual Avalonia/Zafiro/package versions and XML namespace declarations; UntouchedClassBehavior and icon resources must exist in that installation. Do not assume MultiBinding supplies logical And/Or without a suitable converter, or merge style files as ResourceDictionary resources when they contain Styles. Use StyleInclude for style collections and ResourceInclude for resource dictionaries as appropriate to the file root. Keep icons accessible, preserve focus/keyboard behavior and test light/dark themes, text scaling and localization. Avoiding converters/code-behind is a design preference, not a universal correctness or performance rule.
📑 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 |
---
🔗 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.,
HeaderedContainerinstead ofBorderwith manual header) - [ ] Avoided redundant properties? Use shared styles in
axamlfiles. - [ ] Minimized nesting? Flatten layouts using
EdgePanelor generic components. - [ ] Icons via extension? Use
{Icon fa-name}andIconOptionsfor styling. - [ ] Behaviors over code-behind? Use
Interaction.Behaviorsfor 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
GridandStackPanel. - Repeat visual properties across multiple elements (use Styles).
- Use
IValueConverterfor simple logic that belongs in the ViewModel.
DO:
- Use
DynamicResourcefor colors and brushes. - Extract repeated layouts into generic components.
- Leverage
Zafiro.Avaloniaspecific panels likeEdgePanelfor common UI patterns.
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.
Related skills
- avalonia-zafiro-development – Mandatory skills, conventions, and behavioral rules for Avalonia UI development using…
- offers – When the user wants to design, construct, or improve an offer — the thing they actually…
- interaction-design – Design and implement microinteractions, motion design, transitions, and user feedback…
- commercial-policy – Use when designing or revising a company's commercial policy — the rules of engagement…
- hunt-nextjs – Hunt Next.js specific vulnerabilities — Server Actions arbitrary function execution…
- gitnexus-explorer – Serve an interactive codebase knowledge graph web UI.
- kpi-dashboard-design – Design effective KPI dashboards with metrics selection, visualization best practices…
- confluence-expert – Atlassian Confluence expert for creating and managing spaces, knowledge bases, and…