{"id":"1e0e5912-cd68-4353-81a0-12503980751a","shortId":"u9GGmH","kind":"skill","title":"avalonia-viewmodels-zafiro","tagline":"Optimal ViewModel and Wizard creation patterns for Avalonia using Zafiro and ReactiveUI.","description":"# Avalonia ViewModels with Zafiro\n\nThis skill provides a set of best practices and patterns for creating ViewModels, Wizards, and managing navigation in Avalonia applications, leveraging the power of **ReactiveUI** and the **Zafiro** toolkit.\n\n## Core Principles\n\n1.  **Functional-Reactive Approach**: Use ReactiveUI (`ReactiveObject`, `WhenAnyValue`, etc.) to handle state and logic.\n2.  **Enhanced Commands**: Utilize `IEnhancedCommand` for better command management, including progress reporting and name/text attributes.\n3.  **Wizard Pattern**: Implement complex flows using `SlimWizard` and `WizardBuilder` for a declarative and maintainable approach.\n4.  **Automatic Section Discovery**: Use the `[Section]` attribute to register and discover UI sections automatically.\n5.  **Clean Composition**: map ViewModels to Views using `DataTypeViewLocator` and manage dependencies in the `CompositionRoot`.\n\n## Guides\n\n- [ViewModels & Commands](viewmodels.md): Creating robust ViewModels and handling commands.\n- [Wizards & Flows](wizards.md): Building multi-step wizards with `SlimWizard`.\n- [Navigation & Sections](navigation_sections.md): Managing navigation and section-based UIs.\n- [Composition & Mapping](composition.md): Best practices for View-ViewModel wiring and DI.\n\n## Example Reference\n\nFor real-world implementations, refer to the **Angor** project:\n- `CreateProjectFlowV2.cs`: Excellent example of complex Wizard building.\n- `HomeViewModel.cs`: Simple section ViewModel using functional-reactive commands.\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["avalonia","viewmodels","zafiro","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding"],"capabilities":["skill","source-sickn33","skill-avalonia-viewmodels-zafiro","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/avalonia-viewmodels-zafiro","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34964 github stars · SKILL.md body (1,940 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-25T00:50:29.409Z","embedding":null,"createdAt":"2026-04-18T21:31:39.498Z","updatedAt":"2026-04-25T00:50:29.409Z","lastSeenAt":"2026-04-25T00:50:29.409Z","tsv":"'1':52 '2':67 '3':82 '4':98 '5':113 'action':210 'angor':180 'applic':40,204 'approach':56,97 'ask':248 'attribut':81,105 'automat':99,112 'avalonia':2,12,17,39 'avalonia-viewmodels-zafiro':1 'base':156 'best':27,161 'better':73 'boundari':256 'build':141,188 'clarif':250 'clean':114 'clear':223 'command':69,74,130,137,197 'complex':86,186 'composit':115,158 'composition.md':160 'compositionroot':127 'core':50 'creat':32,132 'createprojectflowv2.cs':182 'creation':9 'criteria':259 'datatypeviewloc':121 'declar':94 'depend':124 'describ':211,227 'di':169 'discov':109 'discoveri':101 'enhanc':68 'environ':239 'environment-specif':238 'etc':61 'exampl':170,184 'excel':183 'execut':206 'expert':244 'flow':87,139 'function':54,195 'functional-react':53,194 'guid':128 'handl':63,136 'homeviewmodel.cs':189 'ienhancedcommand':71 'implement':85,176 'includ':76 'input':253 'leverag':41 'limit':215 'logic':66 'maintain':96 'manag':36,75,123,151 'map':116,159 'match':224 'miss':261 'multi':143 'multi-step':142 'name/text':80 'navig':37,148,152 'navigation_sections.md':150 'optim':5 'output':233 'overview':214 'pattern':10,30,84 'permiss':254 'power':43 'practic':28,162 'principl':51 'progress':77 'project':181 'provid':23 'reactiv':55,196 'reactiveobject':59 'reactiveui':16,45,58 'real':174 'real-world':173 'refer':171,177 'regist':107 'report':78 'requir':252 'review':245 'robust':133 'safeti':255 'scope':226 'section':100,104,111,149,155,191 'section-bas':154 'set':25 'simpl':190 'skill':22,202,218 'skill-avalonia-viewmodels-zafiro' 'slimwizard':89,147 'source-sickn33' 'specif':240 'state':64 'step':144 'stop':246 'substitut':236 'success':258 'task':222 'test':242 'toolkit':49 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'treat':231 'ui':110,157 'use':13,57,88,102,120,193,200,216 'util':70 'valid':241 'view':119,165 'view-viewmodel':164 'viewmodel':3,6,18,33,117,129,134,166,192 'viewmodels.md':131 'whenanyvalu':60 'wire':167 'wizard':8,34,83,138,145,187 'wizardbuild':91 'wizards.md':140 'workflow':208 'world':175 'zafiro':4,14,20,48","prices":[{"id":"7a01f99a-f5e8-4d57-b06d-c17502eefb9e","listingId":"1e0e5912-cd68-4353-81a0-12503980751a","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:31:39.498Z"}],"sources":[{"listingId":"1e0e5912-cd68-4353-81a0-12503980751a","source":"github","sourceId":"sickn33/antigravity-awesome-skills/avalonia-viewmodels-zafiro","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/avalonia-viewmodels-zafiro","isPrimary":false,"firstSeenAt":"2026-04-18T21:31:39.498Z","lastSeenAt":"2026-04-25T00:50:29.409Z"}],"details":{"listingId":"1e0e5912-cd68-4353-81a0-12503980751a","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"avalonia-viewmodels-zafiro","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34964,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-24T06:41:17Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"2a3a3dacac0fbaf7c61adb524d6ac1f95017872d","skill_md_path":"skills/avalonia-viewmodels-zafiro/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/avalonia-viewmodels-zafiro"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"avalonia-viewmodels-zafiro","description":"Optimal ViewModel and Wizard creation patterns for Avalonia using Zafiro and ReactiveUI."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/avalonia-viewmodels-zafiro"},"updatedAt":"2026-04-25T00:50:29.409Z"}}