About avalonia-zafiro-development
A development skill for cross-platform Avalonia UI applications using the Zafiro toolkit. It guides developers toward functional-reactive MVVM, explicit error handling, and reusable Zafiro abstractions.
Key features
- 01Functional-reactive MVVM with DynamicData and ReactiveUI
- 02Explicit error handling with Result types
- 03Avalonia-independent ViewModels
- 04Reuse Zafiro abstractions and helpers
- 05Search for existing patterns before coding
Use cases
- 01Structuring cross-platform Avalonia applications
- 02Building reactive data pipelines with DynamicData
- 03Handling errors without using exceptions for control flow
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ davila7/ claude-code-templates --skill avalonia-zafiro-developmentAfter installing, type/avalonia-zafiro-developmentin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
avalonia-reactive-rules.mdcore-technical-skills.mdnaming-standards.mdpatterns.mdzafiro-shortcuts.mdDetails
From the project READMEAvalonia Zafiro Development
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
Resulttypes 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
RefreshableCollectionand 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.
Comments
Markdown supported