Generate comprehensive component guideline documentation for SEED Design System. Use when creating or updating design guideline documentation in ./docs/content/docs/components directory. This skill helps create high-quality documentation similar to action-button.mdx.
npx skills add https://github.com/Microck/ordinary-claude-skills --skill component-guidelines-docs
이 스킬은 SEED Design System의 컴포넌트 가이드라인 문서를 생성합니다. Action Button과 같은 고품질 디자인 가이드라인 문서를 작성할 수 있도록 돕습니다.
사용자에게 다음 정보를 요청합니다:
필수 정보:
action-button, checkbox, badge/packages/rootage/components/{component-id}.yaml 파일이 존재해야 합니다선택 정보:
simple 또는 comprehensivesimple: 기본적인 Props와 Spec만 포함 (예: checkbox, badge)comprehensive: Anatomy, Guidelines, Comparison 등 전체 섹션 포함 (예: action-button)/packages/rootage/components/{component-id}.yaml 파일을 읽어서 다음 정보를 추출합니다:
YAML 구조 이해:
kind: ComponentSpec
metadata:
id: action-button
name: Action Button
data:
schema:
slots: # 컴포넌트의 구성 요소
root:
properties:
backgroundColor: { type: color }
borderRadius: { type: dimension }
label:
properties:
color: { type: color }
fontSize: { type: dimension }
definitions:
base: # 기본 상태별 스타일
enabled: { ... }
pressed: { ... }
disabled: { ... }
variant=brandSolid: # variant별 스타일
enabled: { ... }
size=medium: # size별 스타일
enabled: { ... }
variant=brandSolid, size=medium: # 복합 조건
enabled: { ... }
추출할 정보:
metadata.name (예: "Action Button")metadata.id (예: "action-button")definitions에서 variant= 로 시작하는 키 추출definitions에서 size= 로 시작하는 키 추출definitions.base의 키들 (enabled, pressed, disabled, loading 등)schema.slots의 키들 (root, label, icon, prefixIcon, suffixIcon 등)YAML에서 추출한 정보로 Props 테이블을 생성합니다:
## Props
| 속성 | 값 | 기본값 |
| ----------- | -------------------------------------------------------------------------------------- | --------- |
| size | {extracted sizes} | {default} |
| variant | {extracted variants} | |
| layout | {inferred or provided} | {default} |
| disabled | true, false | false |
| loading | true, false | false |
| prefix icon | icon | |
| suffix icon | icon | |
참고 예시 (Action Button):
| 속성 | 값 | 기본값 |
| ----------- | -------------------------------------------------------------------------------------- | --------- |
| size | xsmall, small, medium, large | medium |
| variant | brand solid, neutral solid, neutral weak, critical solid, brand outline, neutral outline | |
| layout | with text, icon only | with text |
| disabled | true, false | false |
| loading | true, false | false |
| prefix icon | icon | |
| suffix icon | icon | |
---
title: {Component Name}
description: {한국어 설명 - 컴포넌트의 역할과 목적을 1-2문장으로}
---
<PlatformStatusTable componentId="{component-id}" />
## 개요
{컴포넌트에 대한 간단한 소개}
### 옵션 테이블
{Props 테이블}
## 스펙
<ComponentSpecBlock id="{component-id}" />
---
title: {Component Name}
description: {한국어 설명 - 컴포넌트의 역할과 목적을 1-2문장으로}
---
<PlatformStatusTable componentId="{component-id}" />
## Anatomy

{컴포넌트의 구조와 구성 요소 설명}
## Props
{Props 테이블}
### Size

- {Size에 대한 상세 설명}
- {각 사이즈의 용도와 사용 시나리오}
### Variant

- {Variant에 대한 상세 설명}
- {각 variant의 특징과 사용 맥락}
### Layout

- {Layout 옵션에 대한 설명}
- {각 레이아웃의 활용 방법}
### State

- {상태별 동작 설명}
### Width

- {너비 설정 옵션 설명}
## Guidelines
### {Guideline Topic 1}

{가이드라인 내용 - 표, 리스트, 이미지 등을 활용}
#### {Sub-topic}

{세부 가이드라인}
<Grid>
<DoImage src="/docs/components/{component-id}/guidelines-{topic}-do-usage-1.webp" alt="{올바른 사용 설명}" />
<DontImage src="/docs/components/{component-id}/guidelines-{topic}-dont-usage-1.webp" alt="{잘못된 사용 설명}" />
</Grid>
### {Guideline Topic 2}
{반복...}
## Comparison (선택)
### {Component A} vs {Component B}

{두 컴포넌트의 차이점과 사용 시나리오}
| | {Component A} | {Component B} |
| ---------- | ----------------------------- | ----------------------------- |
| 목적 | {purpose A} | {purpose B} |
| 예시 | {examples A} | {examples B} |
| 표현 | {expression A} | {expression B} |
## Differences from V2 (선택)

- {V2와의 차이점 나열}
- {마이그레이션 가이드}
## Spec
<ComponentSpecBlock id="{component-id}" />
모든 이미지는 다음 경로 패턴을 따릅니다:
/docs/public/docs/components/{component-id}/{section-name}.webp
이미지 명명 규칙:
anatomy.webp: 컴포넌트 구조도props-{property}.webp: Props 설명 이미지props-size.webp, props-variant.webp, props-layout.webp, props-state.webpguidelines-{topic}-{number}.webp: 가이드라인 이미지guidelines-hierarchy-1.webp, guidelines-variant-usage-1.webpguidelines-{topic}-{do|dont}-usage-{number}.webp: Do/Don't 예시guidelines-with-icon-do-usage-1.webp, guidelines-with-icon-dont-usage-1.webpcomparison-{component1}-vs-{component2}-{number}.webp: 비교 이미지comparison-action-button-vs-chip-1.webpdifferences-with-v2-{number}.webp: V2 차이점 이미지이미지 준비 및 변환:
/docs/public/docs/components/{component-id}/ 폴더에 준비 bun scripts/convert-images-to-webp.ts --path "docs/public/docs/components/{component-id}/**/*.png" --delete-original
Tone & Voice:
Description (Frontmatter):
Props 설명:
Guidelines 작성:
테이블 작성:
문서에서 사용 가능한 특수 컴포넌트들:
<PlatformStatusTable componentId="{id}" /><ComponentSpecBlock id="{id}" /><DoImage src="..." alt="..." /><DontImage src="..." alt="..." /><Grid> <Grid>
<DoImage src="/path/to/do.webp" alt="올바른 사용법" />
<DontImage src="/path/to/dont.webp" alt="잘못된 사용법" />
</Grid>
Action Button 문서 (/docs/content/docs/components/action-button.mdx):
다른 컴포넌트 문서들:
/docs/content/docs/components/checkbox.mdx, /docs/content/docs/components/badge.mdx/docs/content/docs/components/action-button.mdx문서 생성 후 다음 사항을 확인합니다:
<PlatformStatusTable>과 <ComponentSpecBlock>의 componentId/id가 올바른가?<Grid> 컴포넌트로 적절히 구성되었는가?사용자 입력:
Component ID: checkbox
Documentation Type: simple
생성 결과:
---
title: Checkbox
description: 사용자가 하나 이상의 옵션을 선택할 수 있도록 하는 컴포넌트입니다.
---
<PlatformStatusTable componentId="checkbox" />
## 개요
Checkbox는 사용자가 여러 옵션 중 하나 이상을 선택할 수 있게 합니다.
### 옵션 테이블
| 속성 | 값 | 기본값 |
| ----------- | ---------------------------- | --------- |
| size | small, medium, large | medium |
| disabled | true, false | false |
| checked | true, false | false |
## 스펙
<ComponentSpecBlock id="checkbox" />
사용자 입력:
Component ID: action-button
Documentation Type: comprehensive
Custom Sections:
- Anatomy: yes
- Guidelines Topics: ["Hierarchy", "Variant Usage", "Brand Color Usage", "Multiple Buttons", "Long Label", "With Icon"]
- Comparison: "Action Button vs Chip"
- V2 Differences: yes
생성 결과: /docs/content/docs/components/action-button.mdx 파일 참조
이 스킬은 다음 도구들을 사용합니다:
Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
Set up Tailwind CSS v4 in Expo with react-native-css and NativeWind v5 for universal styling
Use Expo DOM components to run web code in a webview on native and as-is on web. Migrate web code to native incrementally.
Take microck/component-guidelines-docs from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
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.