yarn @storybook/react 10.4.0
v10.4.0

latest release: 10.5.0-alpha.0
3 hours ago

10.4.0

AI-assisted setup, change-aware review, and stronger framework support

Storybook 10.4 contains hundreds of fixes and improvements including:

  • πŸ€– Agentic Setup: New CLI workflow for AI-assisted Storybook setup and onboarding
  • πŸ” Change review: Sidebar filtering to highlight new, modified, and related stories based on git changes
  • 🧭 Sidebar review tools: Status filtering, URL-persisted filters, and clearer review signals in the sidebar
  • βš›οΈ TanStack React: New `@storybook/tanstack-react` framework with routing and server function support
  • 🧩 React MCP: Faster, more accurate component docgen powered by the TypeScript Language Server
  • πŸ“± React Native: Zero config RN project initialization
  • 🀝 Sharing: Easily publish and share your local Storybook with teammates, powered by Chromatic
List of all updates
  • A11y: Add aria-live announcements via @react-aria/live-announcer - #33970, thanks @copilot-swe-agent!
  • A11y: Improve boolean control contrast in forced colors mode - #34204, thanks @anchmelev!
  • Actions: Fix state mutation and keep newest actions when limit reached - #34286, thanks @Sidnioulz!
  • Addon-Docs: Add Reset story button to re-render stories in docs - #34086, thanks @6810779s!
  • Addon-Docs: Avoid rerendering static Source blocks - #34206, thanks @anchmelev!
  • Addon-Vitest: Use Vitest's provide-API for injecting values - #34518, thanks @JReinhold!
  • Agentic Setup: Add --extensive for an extra prompt - #34730, thanks @Sidnioulz!
  • Agentic Setup: Allow failed stories to persist - #34717, thanks @Sidnioulz!
  • Agentic Setup: Keep sample content if users want onboarding - #34704, thanks @Sidnioulz!
  • Agentic Setup: Rework ai-init-opt-in logic - #34739, thanks @Sidnioulz!
  • Angular: Use Story ID for renderer IDs (including standalone stories) - #33982, thanks @ValentinFunk!
  • Automigration: Move RN on-device addons to `deviceAddons` - #34659, thanks @ndelangen!
  • Builder-Vite: Add onModuleGraphChange method - #34323, thanks @ghengeveld!
  • CLI: Add automigrate check for 'storybook' package name conflict - #34290, thanks @whdjh!
  • CLI: Add react-vite to tanstack-react automigration - #34718, thanks @huang-julien!
  • CLI: Change mock event detection - #34586, thanks @yannbf!
  • CLI: Explicitly tell whether smoke tests passed or failed - #34419, thanks @Sidnioulz!
  • CLI: Fix Next.js Vite automigration corrupting configs already using `@storybook/nextjs-vite` - #34249, thanks @nathanjessen!
  • CLI: Fix agentic check - #34678, thanks @yannbf!
  • CLI: Handle minimumReleaseAge conflicts across package managers - #34769, thanks @JReinhold!
  • CLI: Improve package incompatibility detection and warning - #34559, thanks @copilot-swe-agent!
  • CLI: Improve self-healing scoring observability - #34699, thanks @yannbf!
  • CLI: Introduce Agentic Setup workflow - #34297, thanks @yannbf!
  • CLI: Remove extensive prompt option - #34740, thanks @yannbf!
  • CLI: Streamline Node.js version detection code - #34440, thanks @Sidnioulz!
  • Change-Detection: Set GIT_OPTIONAL_LOCKS=0 to avoid blocking commits - #34726, thanks @valentinpalkovic!
  • Cli: Set ai prompt to yes if yes flag for react-vite to tanstack migration - #34743, thanks @huang-julien!
  • Code: Fix inline code blocks inside links removing link affordance - #33903, thanks @yatishgoel!
  • Controls: Add maxPresetColors option to ColorControl - #33998, thanks @mixelburg!
  • Core: Add `ChangeDetectionService` and wire up builder-vite - #34369, thanks @ghengeveld!
  • Core: Add changeDetection feature flag - #34314, thanks @valentinpalkovic!
  • Core: Barrel-aware named import resolution for change detection - #34675, thanks @valentinpalkovic!
  • Core: Ensure process termination on SIGINT when telemetry is disabled - #34585, thanks @ghengeveld!
  • Core: Fix "Open In Editor" support for VSCode - #34747, thanks @JReinhold!
  • Core: Fix telemetry not handling canceling of prompts - #34680, thanks @JReinhold!
  • Core: Implement Git change detection - #34420, thanks @ghengeveld!
  • Core: Improve startup performance by deferring change detection initialization - #34498, thanks @ghengeveld!
  • Core: Normalize file paths in ChangeDetectionService and trace-changed for Windows support - #34445, thanks @ghengeveld!
  • Core: Quiet change-detection regex warning and swap clear icon - #34758, thanks @valentinpalkovic!
  • Core: Rename preview.ts to preview.tsx in generated projects - #34396, thanks @Sidnioulz!
  • Core: Show "new" status on newly added individual stories - #34504, thanks @ghengeveld!
  • Dependencies: Update `vite-plugin-storybook-nextjs` to ^3.2.4 - #34280, thanks @k35o!
  • Docs: Ensure unique control id attributes across multiple Controls blocks - #34021, thanks @TheSeydiCharyyev!
  • Fix ArgsTable borders not visible in Windows High Contrast Mode - #34264, thanks @TheSeydiCharyyev!
  • Fix: Add vite-plus vendored libraries version detection - #34509, thanks @huang-julien!
  • MDX: Replace `@storybook/docs-mdx` with inline implementation - #34611, thanks @copilot-swe-agent!
  • Maintenance: Add assertions outside step incorrectly nested in interactions panel - #34296, thanks @majiayu000!
  • Maintenance: Enhance ghost stories internal tests - #34707, thanks @yannbf!
  • Maintenance: Extract getBuilderOptions helper across framewo… - #34260, thanks @alex-js-ltd!
  • Maintenance: Extract parseFilterParam shared helper from tags and statuses modules - #34436, thanks @mixelburg!
  • Maintenance: Fix self healing payload - #34782, thanks @yannbf!
  • Maintenance: Remove dead-code copy of wrap-getAbsolutePath-utils - #34168, thanks @mixelburg!
  • Maintenance: Use errorToErrorLike in boot-test-runner for consistent stack deduplication - #34385, thanks @mixelburg!
  • Manager: URL-based tag filter state + filter-aware initial story selection - #34283, thanks @valentinpalkovic!
  • Nextjs: Handle node builtin webpack imports - #34494, thanks @JReinhold!
  • Onboarding: Fix checklist MDX instructions - #33193, thanks @kylegach!
  • Prompt: Run vitest fewer times, improve play functions - #34651, thanks @yannbf!
  • React-Docgen: Add tsconfig fallback chain and warning for monorepos - #34353, thanks @viditkbhatnagar!
  • React: Add component metadata extraction via Volar-style LanguageService - #33914, thanks @kasperpeulen!
  • React: Add subcomponents to component manifests - #34428, thanks @kasperpeulen!
  • ReactNative: Add Metro config AST codemod for init - #34660, thanks @ndelangen!
  • ReactNative: Add true entrypoint generation - #34663, thanks @ndelangen!
  • ReactNative: AppRegistry component name in template - #34742, thanks @ndelangen!
  • ReactNative: New init setup - #34665, thanks @ndelangen!
  • Refactor: Extract shared `PseudoStateGrid` component in pseudo-states stories - #34334, thanks @copilot-swe-agent!
  • Security: Makes sure `serialize-javascript` is at latest version - #34034, thanks @50bbx!
  • Sidebar: Add dual-slot status icons for change detection and test results - #34346, thanks @valentinpalkovic!
  • Sidebar: Add status-based filtering with refactored status architecture - #34339, thanks @valentinpalkovic!
  • Sidebar: Fix clear filter button not refreshing story list - #34737, thanks @valentinpalkovic!
  • Sidebar: Fix clear status button to only clear test statuses - #34478, thanks @valentinpalkovic!
  • Sidebar: Show same status icon at story and group level - #34702, thanks @valentinpalkovic!
  • Sidebar: Soften change-detection signals + add Review CTA - #34701, thanks @valentinpalkovic!
  • StatusValue: Add 'status-value:<new|modified|affected>' - #34305, thanks @valentinpalkovic!
  • Svelte: Fix Vite 8 + Vitest breaking rolldown deps scanner - #34783, thanks @JReinhold!
  • Tanstack: Add `@storybook/tanstack-react` package - #34403, thanks @huang-julien!
  • Tanstack: Optimize tanstack react-store - #34731, thanks @huang-julien!
  • Tanstack: Treeshake top-level unused functions - #34760, thanks @huang-julien!
  • Telemetry: Add sidebar filter telemetry for change detection - #34533, thanks @valentinpalkovic!
  • Telemetry: Centralize disable logic with module-level flag - #34485, thanks @valentinpalkovic!
  • Telemetry: Fix delayed init events - #34670, thanks @JReinhold!
  • Telemetry: Refactor init tracking - #34629, thanks @Programer1804!
  • UI: Add Share section to onboarding checklist and redesign share tool - #34413, thanks @valentinpalkovic!
  • UI: Ensure Controls panel can scroll horizontally for now - #34248, thanks @Sidnioulz!
  • UI: Fix global shortcuts not showing region focus indicator - #34201, thanks @Sidnioulz!
  • UI: Fix mobile navigation when renderLabel returns a React node - #34262, thanks @Nathan54Villaume!
  • UI: Fix showing and hiding copy prompt in the correct scenarios - #34706, thanks @yannbf!
  • UI: Improve interactions panel accessibility - #34110, thanks @anchmelev!
  • Vite: Use vite hook filter for performance improvements - #34022, thanks @huang-julien!
  • Vitest: Fix agent detection breaking runs - #34681, thanks @JReinhold!
  • Vue3: Clear stale args/globals when nextArgs is empty in updateArgs - #34409, thanks @whdjh!

Don't miss a new react release

NewReleases is sending notifications on new releases.