Loading source
Pulling the file list, source metadata, and syntax-aware rendering for this listing.
Source from repo
AI-powered design system generator that produces complete, tailored design systems from project requirements.
Files
Skill
Size
Entrypoint
Format
Open file
Syntax-highlighted preview of this file as included in the skill package.
references/component-specs.md
1# Component Specifications23Detailed specs for core components with states and variants.45## Button67### Variants89| Variant | Background | Text | Border | Use Case |10|---------|------------|------|--------|----------|11| default | primary | white | none | Primary actions |12| secondary | gray-100 | gray-900 | none | Secondary actions |13| outline | transparent | foreground | border | Tertiary actions |14| ghost | transparent | foreground | none | Subtle actions |15| link | transparent | primary | none | Navigation |16| destructive | red-600 | white | none | Dangerous actions |1718### Sizes1920| Size | Height | Padding X | Padding Y | Font Size | Icon Size |21|------|--------|-----------|-----------|-----------|-----------|22| sm | 32px | 12px | 6px | 14px | 16px |23| default | 40px | 16px | 8px | 14px | 18px |24| lg | 48px | 24px | 12px | 16px | 20px |25| icon | 40px | 0 | 0 | - | 18px |2627### States2829| State | Background | Text | Opacity | Cursor |30|-------|------------|------|---------|--------|31| default | token | token | 1 | pointer |32| hover | darker | token | 1 | pointer |33| active | darkest | token | 1 | pointer |34| focus | token | token | 1 | pointer |35| disabled | muted | muted-fg | 0.5 | not-allowed |36| loading | token | token | 0.7 | wait |3738### Anatomy3940```41┌─────────────────────────────────────┐42│ [icon] Label Text [icon] │43└─────────────────────────────────────┘44↑ ↑45leading icon trailing icon46```4748---4950## Input5152### Variants5354| Variant | Description |55|---------|-------------|56| default | Standard text input |57| textarea | Multi-line text |58| select | Dropdown selection |59| checkbox | Boolean toggle |60| radio | Single selection |61| switch | Toggle switch |6263### Sizes6465| Size | Height | Padding | Font Size |66|------|--------|---------|-----------|67| sm | 32px | 8px 12px | 14px |68| default | 40px | 8px 12px | 14px |69| lg | 48px | 12px 16px | 16px |7071### States7273| State | Border | Background | Ring |74|-------|--------|------------|------|75| default | gray-300 | white | none |76| hover | gray-400 | white | none |77| focus | primary | white | primary/20% |78| error | red-500 | white | red/20% |79| disabled | gray-200 | gray-100 | none |8081### Anatomy8283```84Label (optional)85┌─────────────────────────────────────┐86│ [icon] Placeholder/Value [action] │87└─────────────────────────────────────┘88Helper text or error message89```9091---9293## Card9495### Variants9697| Variant | Shadow | Border | Use Case |98|---------|--------|--------|----------|99| default | sm | 1px | Standard card |100| elevated | lg | none | Prominent content |101| outline | none | 1px | Subtle container |102| interactive | sm→md | 1px | Clickable card |103104### Anatomy105106```107┌─────────────────────────────────────┐108│ Card Header │109│ Title │110│ Description │111├─────────────────────────────────────┤112│ Card Content │113│ Main content area │114│ │115├─────────────────────────────────────┤116│ Card Footer │117│ Actions │118└─────────────────────────────────────┘119```120121### Spacing122123| Area | Padding |124|------|---------|125| header | 24px 24px 0 |126| content | 24px |127| footer | 0 24px 24px |128| gap | 16px |129130---131132## Badge133134### Variants135136| Variant | Background | Text |137|---------|------------|------|138| default | primary | white |139| secondary | gray-100 | gray-900 |140| outline | transparent | foreground |141| destructive | red-600 | white |142| success | green-600 | white |143| warning | yellow-500 | gray-900 |144145### Sizes146147| Size | Padding | Font Size | Height |148|------|---------|-----------|--------|149| sm | 4px 8px | 11px | 20px |150| default | 4px 10px | 12px | 24px |151| lg | 6px 12px | 14px | 28px |152153---154155## Alert156157### Variants158159| Variant | Icon | Background | Border |160|---------|------|------------|--------|161| default | info | gray-50 | gray-200 |162| destructive | alert | red-50 | red-200 |163| success | check | green-50 | green-200 |164| warning | warning | yellow-50 | yellow-200 |165166### Anatomy167168```169┌─────────────────────────────────────┐170│ [icon] Title [×]│171│ Description text │172└─────────────────────────────────────┘173```174175---176177## Dialog178179### Sizes180181| Size | Max Width | Use Case |182|------|-----------|----------|183| sm | 384px | Simple confirmations |184| default | 512px | Standard dialogs |185| lg | 640px | Complex forms |186| xl | 768px | Data-heavy dialogs |187| full | 100% - 32px | Full-screen on mobile |188189### Anatomy190191```192┌───────────────────────────────────────┐193│ Dialog Header [×]│194│ Title │195│ Description │196├───────────────────────────────────────┤197│ Dialog Content │198│ Scrollable if needed │199│ │200├───────────────────────────────────────┤201│ Dialog Footer │202│ [Cancel] [Confirm]│203└───────────────────────────────────────┘204```205206---207208## Table209210### Row States211212| State | Background | Use Case |213|-------|------------|----------|214| default | white | Normal row |215| hover | gray-50 | Mouse over |216| selected | primary/10% | Selected row |217| striped | gray-50/white | Alternating |218219### Cell Alignment220221| Content Type | Alignment |222|--------------|-----------|223| Text | Left |224| Numbers | Right |225| Status/Badge | Center |226| Actions | Right |227228### Spacing229230| Element | Value |231|---------|-------|232| cell padding | 12px 16px |233| header padding | 12px 16px |234| row height (compact) | 40px |235| row height (default) | 48px |236| row height (comfortable) | 56px |237