This skill defines the mandatory conventions and behavioral rules for developing cross-platform applications with Avalonia UI and the Zafiro toolkit. These rules prioritize maintainability, correctness, and a functional-reactive approach.
Core Pillars
Functional-Reactive MVVM: Pure MVVM logic using DynamicData and ReactiveUI.
Safety & Predictability: Explicit error handling with Result types and avoidance of exceptions for flow control.
Cross-Platform Excellence: Strictly Avalonia-independent ViewModels and composition-over-inheritance.
Zafiro First: Leverage existing Zafiro abstractions and helpers to avoid redundancy.
Guides
Core Technical Skills & Architecture: Fundamental skills and architectural principles.
Naming & Coding Standards: Rules for naming, fields, and error handling.
Avalonia, Zafiro & Reactive Rules: Specific guidelines for UI, Zafiro integration, and DynamicData pipelines.
Zafiro Shortcuts: Concise mappings for common Rx/Zafiro operations.
Common Patterns: Advanced patterns like RefreshableCollection and Validation.
Procedure Before Writing Code
Search First: Search the codebase for similar implementations or existing Zafiro helpers.
Reusable Extensions: If a helper is missing, propose a new reusable extension method instead of inlining complex logic.
Reactive Pipelines: Ensure DynamicData operators are used instead of plain Rx where applicable.
How to use it
Copy the folder
Take dokhacgiakhoa/avalonia-zafiro-development 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.