"매 component 의 isolated workshop — 매 visual catalog + 매 interaction test + 매 a11y 의 single source". 2016 React Storybook (Arunoda) → 2026 Storybook 8 매 Vite-first + Test 매 first-class + 매 Chromatic 매 visual regression. 매 design-system 매 매 매 indispensable.
매 핵심
매 3 value
Isolation: 매 component 의 매 props/state 의 explore 매 app context 의 X.
Documentation: 매 stories 의 living spec — 매 Figma 의 ↔ 매 code 의 sync.
Testing: 매 visual regression (Chromatic), 매 interaction (play fn), 매 a11y (axe).
매 file structure
Button.stories.tsx 매 매 component 의 옆.
meta (component, args, argTypes, parameters) + 매 export 별 매 story.
// .storybook/preview.ts
importtype{Preview}from'@storybook/react';constpreview: Preview={parameters:{a11y:{config:{rules:[{id:'color-contrast',enabled: true}]}},},};exportdefaultpreview;// 매 axe-core 매 매 story 매 자동 audit, panel 의 violation 의 surface
언제: 매 component 의 stories 의 boilerplate 의 generate, 매 interaction-test 의 scaffold, 매 design-spec ↔ args 의 sync.
언제 X: 매 visual judgment (snapshot review) — 매 designer 의 human review.
❌ 안티패턴
매 stories 의 component 의 모든 prop combo 의 explosion — 매 visual diff 매 noise. 매 representative 매 5-10 의 keep.
매 fetch / global store 의 story 의 raw use — 매 isolation broken. 매 mock + decorator.
매 interaction test 의 unit test 의 replace — 매 unit (Vitest) + 매 interaction (Storybook) 의 complement.
Chromatic 의 baseline 의 매 PR 매 auto-accept — 매 visual regression 의 silent miss.