mono/skiasharp.extended/docs-writer
- community
Checking that the SKILL.md file is still in the repository.
Guide for writing and improving documentation for SkiaSharp.Extended. Use this skill when creating, updating, or reviewing documentation pages, writing code examples for docs, generating screenshots for documentation, or improving existing docs.
Install
npx vskill@latest install mono/skiasharp.extended/docs-writerSKILL.md
Documentation Writer
This skill provides guidance for writing effective documentation for SkiaSharp.Extended.
Documentation Principles
Goals
- Help new developers discover features
- Help experienced developers find advanced features and customization
- Be helpful, consistent, and informative - not verbose
- This is a community docs page - impress and help users
Style Guidelines
- Friendly feature names in TOC and titles (e.g., "Blur Hash" not "SKBlurHash")
- Conceptual first - explain why/when, then how
- Conversational tone - write as if explaining to a colleague
- Concise code examples - show primary overloads, not all variants
- Research origins - credit creators, link to official resources
- Strategic visuals - screenshots that add clarity, not decoration
- Second person - use "you can..." not "users can..."
What Makes Good Docs
- Explain the problem it solves before showing how to use it
- Show before/after comparisons where applicable
- Include real-world usage patterns (API responses, MAUI bindings)
- Provide customization options with visual comparisons when helpful
- Link to authoritative sources for external technologies
API Documentation
- Link to generated API docs using xref syntax:
[API Reference](xref:SkiaSharp.Extended.SKBlurHash) - Include summary tables only when they reduce redirects and add clarity
- Don't reproduce the full API docs in conceptual pages
Images
- Keep existing images; use descriptive names for new ones (e.g.,
components-comparison.png) - Store in
docs/images/extended/<feature>/ordocs/images/ui/controls/<control>/ - Use PNGs for UI screenshots, can use GIFs for animations
Page Structure
Each documentation page follows this pattern:
Example: External Technology Attribution
For features based on external technologies (BlurHash, Lottie, etc.):
Example: Parameter Table
When parameters need explanation:
Screenshot Generation
Base Library Features
Generate screenshots using a temporary console app in /tmp/:
Create a minimal .csproj:
Write Program.cs to generate comparison images, then run:
Screenshot Best Practices
- Generate side-by-side comparisons (e.g., different parameter values)
- Add labels to images using SKPaint/SKFont
- Use white background for consistency
- Cell size around 200x200 pixels works well
- Save directly to
docs/images/extended/<feature>/
Example: Comparison Image Generator
MAUI Controls
Discuss approach case-by-case - may require running on actual platforms. Existing GIFs in the repo can be kept.
MAUI Integration Examples
Always test MAUI code in a real project before including in docs.
Test Project Setup
SKBitmap to ImageSource
Use the implicit conversion to SKBitmapImageSource (cross-platform, not Windows-specific):
Do NOT use ToWriteableBitmap() - that's Windows-only.
Value Converter Pattern
Include configurable properties for flexibility:
XAML Usage
Always show how to use the converter in XAML:
Building and Previewing Docs
Verify pages render correctly:
Code Block Language Tags
Use consistent language tags for syntax highlighting:
- `xml` for XAML/XML content (not
xaml- docfx highlightsxmlbetter) - `csharp` for C# code
- `bash` for shell commands
- `yaml` for YAML files
TOC Structure
For small documentation sites, use a flat TOC with section headings:
TOC Guidelines
- Headings without href become visual section separators
- Use friendly feature names (not type names)
- Put migration guides and other non-essential content under a "Resources" heading
- Nested items only when there are true sub-pages (like Migration Guides)
File Naming
When renaming doc files for friendlier URLs:
skblurhash.md→blurhash.mdskgeometry.md→geometry.md(if renaming)- Update TOC href references accordingly
Research Checklist
When documenting external technologies:
- Who invented/created it?
- Is there an official website or demo?
- Is there a GitHub repository?
- Is there an origin story or blog post?
- What problem does it solve?
- Are there alternatives? (mention if relevant)
Testing Doc Code Snippets
Always test code snippets before including in docs.
Create a Test Project
For each doc page, create a minimal test project in /tmp/:
Create .csproj:
Test All Code Snippets
Create Program.cs that exercises all code from the doc page:
Run the test:
For MAUI Code
Test in a separate MAUI project (see MAUI Integration Examples section).
Quality Checklist
Before finalizing a doc page:
- [ ] Friendly title (not type name)
- [ ] Brief intro explaining the value proposition
- [ ] Hero image or comparison
- [ ] Quick start with working code
- [ ] Customization options explained
- [ ] MAUI integration example (if applicable)
- [ ] Learn More links (official resources + API reference)
- [ ] All code snippets tested in /tmp/ project
- [ ] Build docs and verify no warnings
- [ ] Check rendered page in browser
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.github/skills/docs-writer/SKILL.md
Popularity
- Repository stars
- 265
- Repository forks
- 75
- 7-day trend score
- 28
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 18 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/mono/skiasharp.extended/docs-writer)