From ac26ff233490ee22ef9f0a207db9d36ace23a18a Mon Sep 17 00:00:00 2001 From: Frankie Yan Date: Fri, 12 Jun 2026 13:42:54 -0700 Subject: [PATCH] docs(storybook): reorganize story hierarchy by component category Regroup every story title under the nine type-based categories from the Reactist component inventory, replacing the inconsistent Design system / Components split so the sidebar matches the inventory we're standardizing on. Co-Authored-By: Claude Opus 4.8 (1M context) --- .storybook/preview.ts | 16 +++++++++++++++- src/avatar/avatar.stories.tsx | 2 +- src/badge/badge.stories.jsx | 2 +- src/banner/banner.stories.jsx | 2 +- src/box/box.stories.tsx | 2 +- src/button/button.stories.jsx | 2 +- src/button/icon-button.stories.jsx | 2 +- src/checkbox-field/checkbox-field.stories.jsx | 2 +- src/columns/columns.stories.tsx | 2 +- src/heading/heading.stories.tsx | 2 +- src/hidden/hidden.stories.tsx | 2 +- src/hooks/use-previous/use-previous.mdx | 2 +- src/inline/inline.stories.tsx | 2 +- src/loading/loading.stories.jsx | 2 +- src/menu/menu.stories.jsx | 2 +- src/modal/modal-docs.mdx | 2 +- src/modal/modal-examples.stories.tsx | 2 +- src/notice/notice.stories.jsx | 2 +- src/password-field/password-field.stories.jsx | 2 +- src/prose/prose.stories.tsx | 2 +- src/select-field/select-field.stories.jsx | 2 +- src/stack/stack.stories.tsx | 2 +- src/switch-field/switch-field.stories.jsx | 2 +- src/tabs/tabs.stories.jsx | 2 +- src/text-area/text-area.stories.jsx | 2 +- src/text-field/text-field.stories.jsx | 2 +- src/text-link/text-link.stories.jsx | 2 +- src/text/text.stories.tsx | 2 +- src/toast/toast.stories.tsx | 2 +- src/tooltip/tooltip.stories.tsx | 2 +- stories/components/ColorPicker.stories.tsx | 2 +- stories/components/Input.stories.tsx | 2 +- stories/components/KeyCapturer.stories.tsx | 2 +- stories/components/KeyboardShortcut.stories.tsx | 2 +- stories/components/ProgressBar.stories.tsx | 2 +- stories/components/Time.stories.tsx | 2 +- 36 files changed, 50 insertions(+), 36 deletions(-) diff --git a/.storybook/preview.ts b/.storybook/preview.ts index ef721f8f..1b1e662c 100644 --- a/.storybook/preview.ts +++ b/.storybook/preview.ts @@ -22,7 +22,21 @@ const preview: Preview = { options: { storySort: { method: 'alphabetical', - order: ['Reactist', 'Design tokens', 'Design system', 'Hooks', 'Components'], + order: [ + 'Reactist', + 'Design tokens', + '🔘 Buttons & links', + '📊 Data display', + '💬 Feedback', + '📝 Form', + '📐 Layout', + '📑 Menus & tabs', + '🪟 Overlays', + '🔤 Typography', + '⚙️ Utility', + '🪝 Hooks', + 'Tips and tricks', + ], }, }, chromatic: { diff --git a/src/avatar/avatar.stories.tsx b/src/avatar/avatar.stories.tsx index 720595d1..534ba12a 100644 --- a/src/avatar/avatar.stories.tsx +++ b/src/avatar/avatar.stories.tsx @@ -183,7 +183,7 @@ type PlaygroundArgs = Omit & { } const meta = { - title: 'Components/Avatar', + title: '📊 Data display/Avatar', component: Avatar, parameters: { badges: ['accessible'], diff --git a/src/badge/badge.stories.jsx b/src/badge/badge.stories.jsx index 374916de..02bbfff4 100644 --- a/src/badge/badge.stories.jsx +++ b/src/badge/badge.stories.jsx @@ -96,7 +96,7 @@ function DarkModeTemplate() { } export default { - title: 'Design system/Badge', + title: '📊 Data display/Badge', component: Badge, parameters: { diff --git a/src/banner/banner.stories.jsx b/src/banner/banner.stories.jsx index 323d227f..988c8dac 100644 --- a/src/banner/banner.stories.jsx +++ b/src/banner/banner.stories.jsx @@ -383,7 +383,7 @@ function DarkModeTemplate() { } export default { - title: 'Design system/Banner', + title: '💬 Feedback/Banner', component: Banner, parameters: { diff --git a/src/box/box.stories.tsx b/src/box/box.stories.tsx index 7bfc4607..6f77f672 100644 --- a/src/box/box.stories.tsx +++ b/src/box/box.stories.tsx @@ -32,7 +32,7 @@ import type { import type { BoxBorderRadius } from './box' export default { - title: 'Design system/Box', + title: '📐 Layout/Box', component: Box, parameters: { badges: ['accessible'], diff --git a/src/button/button.stories.jsx b/src/button/button.stories.jsx index 9af5067b..0ec3fd9a 100644 --- a/src/button/button.stories.jsx +++ b/src/button/button.stories.jsx @@ -183,7 +183,7 @@ function DarkModeTemplate(props) { } export default { - title: 'Design system/Button', + title: '🔘 Buttons & links/Button', component: Button, parameters: { diff --git a/src/button/icon-button.stories.jsx b/src/button/icon-button.stories.jsx index eb811f9d..b5306c38 100644 --- a/src/button/icon-button.stories.jsx +++ b/src/button/icon-button.stories.jsx @@ -101,7 +101,7 @@ function DarkModeTemplate(props) { } export default { - title: 'Design system/IconButton', + title: '🔘 Buttons & links/IconButton', component: IconButton, parameters: { diff --git a/src/checkbox-field/checkbox-field.stories.jsx b/src/checkbox-field/checkbox-field.stories.jsx index 86ea5c53..c88c7caa 100644 --- a/src/checkbox-field/checkbox-field.stories.jsx +++ b/src/checkbox-field/checkbox-field.stories.jsx @@ -29,7 +29,7 @@ const Template = ({ }) => export default { - title: 'Design system/CheckboxField', + title: '📝 Form/CheckboxField', component: CheckboxField, parameters: { diff --git a/src/columns/columns.stories.tsx b/src/columns/columns.stories.tsx index 6a1c0687..49b28ea0 100644 --- a/src/columns/columns.stories.tsx +++ b/src/columns/columns.stories.tsx @@ -23,7 +23,7 @@ import type { } from './columns' export default { - title: 'Design system/Columns', + title: '📐 Layout/Columns', component: Columns, subcomponents: { Column }, argTypes: { diff --git a/src/heading/heading.stories.tsx b/src/heading/heading.stories.tsx index c59828f6..58363448 100644 --- a/src/heading/heading.stories.tsx +++ b/src/heading/heading.stories.tsx @@ -6,7 +6,7 @@ import { ResponsiveWidthRef, select, selectWithNone } from '../utils/storybook-h import { Heading } from './heading' export default { - title: 'Design system/Heading', + title: '🔤 Typography/Heading', component: Heading, parameters: { badges: ['accessible'], diff --git a/src/hidden/hidden.stories.tsx b/src/hidden/hidden.stories.tsx index 6f683320..631bf2c0 100644 --- a/src/hidden/hidden.stories.tsx +++ b/src/hidden/hidden.stories.tsx @@ -6,7 +6,7 @@ import { Placeholder, ResponsiveWidthRef } from '../utils/storybook-helper' import { Hidden } from './hidden' export default { - title: 'Design system/Hidden', + title: '📐 Layout/Hidden', component: Hidden, parameters: { badges: ['accessible'], diff --git a/src/hooks/use-previous/use-previous.mdx b/src/hooks/use-previous/use-previous.mdx index c37c8f60..08c356de 100644 --- a/src/hooks/use-previous/use-previous.mdx +++ b/src/hooks/use-previous/use-previous.mdx @@ -1,7 +1,7 @@ import { Meta } from '@storybook/addon-docs/blocks' import { usePrevious } from './use-previous' - + # usePrevious diff --git a/src/inline/inline.stories.tsx b/src/inline/inline.stories.tsx index 70deb19c..13e95033 100644 --- a/src/inline/inline.stories.tsx +++ b/src/inline/inline.stories.tsx @@ -18,7 +18,7 @@ import type { PartialProps } from '../utils/storybook-helper' import type { InlineAlign } from './inline' export default { - title: 'Design system/Inline', + title: '📐 Layout/Inline', component: Inline, argTypes: { space: selectSize('medium'), diff --git a/src/loading/loading.stories.jsx b/src/loading/loading.stories.jsx index 2199f8e5..73b10cb5 100644 --- a/src/loading/loading.stories.jsx +++ b/src/loading/loading.stories.jsx @@ -16,7 +16,7 @@ function Example({ children, size }) { } export default { - title: 'Design system/Loading', + title: '💬 Feedback/Loading', component: Loading, parameters: { diff --git a/src/menu/menu.stories.jsx b/src/menu/menu.stories.jsx index f682c9cc..4c9a655d 100644 --- a/src/menu/menu.stories.jsx +++ b/src/menu/menu.stories.jsx @@ -59,7 +59,7 @@ function StructuredMenuItem({ icon, label, shortcut }) { } export default { - title: 'Design system/Menu', + title: '📑 Menus & tabs/Menu', component: Menu, parameters: { diff --git a/src/modal/modal-docs.mdx b/src/modal/modal-docs.mdx index f45a2a25..24c106f9 100644 --- a/src/modal/modal-docs.mdx +++ b/src/modal/modal-docs.mdx @@ -2,7 +2,7 @@ import { Meta, ArgTypes, Description } from '@storybook/addon-docs/blocks' import { Modal, ModalHeader, ModalBody, ModalFooter, ModalActions, ModalCloseButton } from './modal' = { - title: 'Components/KeyCapturer', + title: '⚙️ Utility/KeyCapturer', component: KeyCapturer, } export default meta diff --git a/stories/components/KeyboardShortcut.stories.tsx b/stories/components/KeyboardShortcut.stories.tsx index ef8ea781..0367983b 100644 --- a/stories/components/KeyboardShortcut.stories.tsx +++ b/stories/components/KeyboardShortcut.stories.tsx @@ -7,7 +7,7 @@ import KeyboardShortcut from '../../src/components/keyboard-shortcut' // Story setup ================================================================ export default { - title: 'Components/KeyboardShortcut', + title: '📊 Data display/KeyboardShortcut', parameters: { badges: ['accessible'], }, diff --git a/stories/components/ProgressBar.stories.tsx b/stories/components/ProgressBar.stories.tsx index 9dfd7113..427a90af 100644 --- a/stories/components/ProgressBar.stories.tsx +++ b/stories/components/ProgressBar.stories.tsx @@ -7,7 +7,7 @@ import ProgressBar from '../../src/components/progress-bar' // Story setup ================================================================ export default { - title: 'Components/ProgressBar', + title: '💬 Feedback/ProgressBar', component: ProgressBar, parameters: { badges: ['accessible'], diff --git a/stories/components/Time.stories.tsx b/stories/components/Time.stories.tsx index fb25b463..ea1be66e 100644 --- a/stories/components/Time.stories.tsx +++ b/stories/components/Time.stories.tsx @@ -9,7 +9,7 @@ import Time from '../../src/components/time' // Story setup ================================================================ export default { - title: 'Components/Time', + title: '📊 Data display/Time', component: Time, parameters: { badges: ['accessible'],