8.3.0
Fresh out of the oven! Storybook 8.3 brings you:
- ⚡️ First-class Vitest integration to run stories as component tests
- 🔼 Next.js-Vite framework for Vitest compatibility and better DX
- 🗜️ Further reduced bundle size for a smaller install footprint
- 🌐 Experimental Story globals to standardize stories for themes, viewports, and locales
- 💯 Hundreds more improvements
<details>
<summary>List of all updates</summary>
- Addon Test: Improve messages and post install script handling - #29036, thanks @yannbf!
- Addon Viewport: Add default options via parameters - #28944, thanks @ndelangen!
- Addon Test: Add experimental vitest integration - #28768, thanks @kasperpeulen!
- Addon Test: Fix error message logic in set up file - #28906, thanks @yannbf!
- Addon Test: Fix indentation of 'vitePluginNext' in generated Vitest config file - #29011, thanks @ghengeveld!
- Addon Test: Fix postinstall file types - #28978, thanks @shilman!
- Addon Test: Fix tests potentially not existing in non-isolate mode - #28993, thanks @yannbf!
- Addon Test: Improve transformation logic to avoid duplicate tests - #28929, thanks @yannbf!
- Addon Test: Set default viewport if applicable - #28905, thanks @yannbf!
- Addon Test: Set screenshotFailures to false by default - #28908, thanks @yannbf!
- Addon Docs: Remove babel dependency - #28915, thanks @shilman!
- Addon Interactions: Fix status in panel tab - #28580, thanks @yannbf!
- Angular: Fix Angular template error for props with a circular reference - #28498, thanks @Marklb!
- Angular: Fix template props not able to use dot notation - #28588, thanks @Marklb!
- Backgrounds/Viewports: Make defaults overridable in
StoryGlobals
-mode - #29025, thanks @JReinhold! - Blocks: Fix scroll to non-ascii anchors - #28826, thanks @SkReD!
- Build: Remove external overrides, use package.json as source of truth - #28632, thanks @kasperpeulen!
- Builder-Vite: Add null character prefix to virtual file IDs - #28863, thanks @valentinpalkovic!
- Builder-Vite: Fix 'condition node never be used' warning - #28989, thanks @valentinpalkovic!
- CLI: Add conditional logging for manager and preview start - #28603, thanks @tobiasdiez!
- CLI: Fix dedent import in package managers - #28980, thanks @shilman!
- CLI: Fix the initialization of Storybook in workspaces - #28699, thanks @valentinpalkovic!
- CLI: Handle Yarn PnP wrapper scenario when adding an addon - #29027, thanks @yannbf!
- CLI: Make PackageJson optional for starting a dev server - #28594, thanks @tobiasdiez!
- CLI: Update spawn options in proxy.ts to support Windows - #28990, thanks @valentinpalkovic!
- Components: Remove external overrides - #28632, thanks @kasperpeulen!
- ConfigFile: Fix
as const satisfies
modifiers - #29000, thanks @shilman! - Controls: Add disableSave parameter - #28734, thanks @valentinpalkovic!
- Core: Add Rsbuild frameworks to known frameworks - #28694, thanks @fi3ework!
- Core: De-duplicate babel use in core - #28972, thanks @ndelangen!
- Core: Fix header for MountMustBeDestructuredError message - #28590, thanks @0916dhkim!
- Core: Fix manager-builder
tsconfig
to emit react-jsx
- #28541, thanks @williamhelmrath! - Core: Introduce setProjectAnnotations API to more renderers and frameworks - #28907, thanks @yannbf!
- Core: Make sure CJS build always has lowest prio - #28829, thanks @kasperpeulen!
- Core: Move
util
to regular dependency - #29008, thanks @ndelangen! - Core: Split Storybook CLI - #28519, thanks @kasperpeulen!
- Core: Upgrade docs-mdx for smaller install - #28552, thanks @shilman!
- CPC: Add
ESM
export to docs-tools
& node-logger
packages - #28539, thanks @ndelangen! - CPC: Fix missing dependency in
@storybook/addon-interactions
- #28518, thanks @ndelangen! - CPC: Fix type generation - #28507, thanks @ndelangen!
- CPC: Revert renames of panels, addon_ids - #28524, thanks @ndelangen!
- CSF: Allow overridding globals at the story level - #26654, thanks @tmeasday!
- Dependencies: Upgrade
commander
- #28857, thanks @43081j! - Fix: Add header for MountMustBeDestructuredError message - #28590, thanks @0916dhkim!
- Fix: Prevent iframe from capturing mouse events in composed Storybooks - #28568, thanks @Vincentdevreede!
- Maintenance: Add
node:
-prefix to node core-modules - #28860, thanks @ndelangen! - Maintenance: Rename addon-vitest to addon-test - #29014, thanks @yannbf!
- Next.js-Vite: Fix vite plugin exports - #29046, thanks @valentinpalkovic!
- Next.js-Vite: Streamline Next.js dir option - #28995, thanks @valentinpalkovic!
- Next.js-Vite: Update next and vite-plugin-storybook-nextjs dependencies - #28994, thanks @valentinpalkovic!
- Next.js: Add @storybook/nextjs-vite package - #28800, thanks @valentinpalkovic!
- Next.js: Fix wrong Next.js framework reference - #28992, thanks @valentinpalkovic!
- Next.js: Make RSC portable-stories compatible - #28756, thanks @valentinpalkovic!
- Next.js: Update dependencies - #29052, thanks @valentinpalkovic!
- Nextjs-Vite: Re-export vite-plugin-storybook-nextjs - #29012, thanks @valentinpalkovic!
- Portable Stories: Improve Handling of React Updates and Errors - #29044, thanks @valentinpalkovic!
- React: Avoid 'Dynamic require of react is not possible' issue - #28730, thanks @valentinpalkovic!
- React: Bundle in
lodash
- #28609, thanks @ndelangen! - Svelte: Fix events not being logged in Actions when a story has decorators - #28247, thanks @JReinhold!
- SvelteKit: Introduce portable stories support - #28918, thanks @yannbf!
- SvelteKit/Vue3: Refactor plugin export paths - #29016, thanks @yannbf!
- Telemetry: Add globals stats - #28822, thanks @shilman!
- Telemetry: Add portable stories - #26764, thanks @shilman!
- Test: Fix support for TS < 4.7 - #28887, thanks @ndelangen!
- Test: Rename vitest plugin entrypoint - #29067, thanks @yannbf!
- Test: Upgrade Vitest to v2 - #28788, thanks @yannbf!
- Types: Adjust beforeAll to be non-nullable in NormalizedProjectAnnotations - #28671, thanks @kasperpeulen!
- Types: Update type signatures of objects and functions - #28503, thanks @valentinpalkovic!
- UI: Fix collapse/expand all functionality - #28582, thanks @filipemelo2002!
- UI: Fix conditional hooks usage in sidebar - #28979, thanks @JReinhold!
- UI: Fix sidebar not wrapping - #29055, thanks @JReinhold!
- Vite: Fix HMR - #28876, thanks @ndelangen!
- Vite: Fix missing source map warning - #28984, thanks @valentinpalkovic!
- Vitest: Fix add command - #28975, thanks @ghengeveld!
- Vitest: Fix default viewport - #28943, thanks @kasperpeulen!
- Vitest: Implement add command for vitest addon - #28920, thanks @kasperpeulen!
- Vue: Add missing prop controls when using
vue-component-meta
docgen plugin - #28760, thanks @larsrickert! - Vue: Improve generated code snippets - #27194, thanks @larsrickert!
- Vue3: Add vite plugin for portable stories - #29004, thanks @yannbf!
</details>