Claude-skill-registry kotlin-composable-preview
Generate comprehensive @Preview functions for Jetpack Compose composables. Analyzes component parameters, states, and dependencies to create previews covering all visual states, edge cases, and configurations.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/kotlin-composable-preview" ~/.claude/skills/majiayu000-claude-skill-registry-kotlin-composable-preview && rm -rf "$T"
manifest:
skills/data/kotlin-composable-preview/SKILL.mdsource content
Kotlin Composable Preview Generator
Skill for generating production-quality @Preview functions for Jetpack Compose UI components.
When to Use
- Adding previews to new Composable functions
- Enhancing existing previews with more state coverage
- Creating previews for components with sealed class states
- Generating multi-configuration previews (light/dark, device sizes)
Preview Categories
- Simple Preview - Basic single-state preview
- Multi-State Preview - Separate @Preview for each state (sealed class, enum)
- Variant Preview - Column/Row showing all variants in one preview
- Interactive Preview - Using PreviewParameter for data-driven previews
- Configuration Preview - Device, font scale, UI mode configurations
Generation Workflow
-
Analyze Composable signature
- Extract parameters (required/optional)
- Identify state classes (data class, sealed class, enum)
- Find callback parameters (lambdas)
-
Identify preview requirements
- Check for HazeState dependency → needs hazeSource setup
- Check for modifier patterns → use appropriate sizing
- Check for sealed class states → generate preview for each subtype
-
Generate previews
- Follow naming:
,{ComposableName}Preview{ComposableName}{State}Preview - Use
modifier for preview functionsprivate - Add dark background wrapper when needed
- Provide realistic sample data
- Follow naming:
Preview Patterns Reference
See
references/preview-patterns.md for detailed examples.
Output Guidelines
| Aspect | Guideline |
|---|---|
| Naming | , |
| Visibility | for preview functions |
| Background | Use for dark-themed components |
| HazeState | Use + setup |
| Callbacks | Use empty lambdas for onClick, onDismiss |
| Sample Data | Use realistic Vietnamese text when appropriate |
Quality Checklist
- All sealed class/enum states have dedicated previews
- Required parameters have realistic sample values
- Preview renders correctly in Android Studio
- Dark backgrounds used for dark-themed components
- HazeState properly configured when needed
- Proper imports added