Skip to content

Core: Remove CJS bundles, only ship ESM#31819

Merged
ndelangen merged 716 commits into
nextfrom
sb10/esm-only
Aug 13, 2025
Merged

Core: Remove CJS bundles, only ship ESM#31819
ndelangen merged 716 commits into
nextfrom
sb10/esm-only

Conversation

@ndelangen
Copy link
Copy Markdown
Member

@ndelangen ndelangen commented Jun 19, 2025

What I did

This is the target branch of all ESM-only related work for Storybook v10

🦋 Canary release

This pull request has been released as version 0.0.0-pr-31819-sha-9ee3107e. Try it out in a new sandbox by running npx storybook@0.0.0-pr-31819-sha-9ee3107e sandbox or in an existing project with npx storybook@0.0.0-pr-31819-sha-9ee3107e upgrade.

More information
Published version 0.0.0-pr-31819-sha-9ee3107e
Triggered by @ndelangen
Repository storybookjs/storybook
Branch sb10/esm-only
Commit 9ee3107e
Datetime Wed Aug 13 10:20:37 UTC 2025 (1755080437)
Workflow run 16934397317

To request a new release of this pull request, mention the @storybookjs/core team.

core team members can create a new canary release here or locally with gh workflow run --repo storybookjs/storybook canary-release-pr.yml --field pr=31819

Greptile Summary

Target branch for transitioning Storybook v10 to ESM-only modules, marking a significant architectural shift in package format and module system.

  • Initiates ESM-only architecture for Storybook v10, removing CommonJS support
  • Contains preparation work for ESM transition across all Storybook packages
  • Targets next branch as base for v10 development
  • No canary release yet available, can be requested via @storybookjs/core team mention

@ndelangen ndelangen marked this pull request as draft June 19, 2025 09:12
@ndelangen ndelangen added this to the 10 milestone Jun 19, 2025
Copy link
Copy Markdown
Contributor

@greptile-apps greptile-apps Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

No files reviewed, no comments
Edit PR Review Bot Settings | Greptile

@ndelangen ndelangen added ci: do not merge maintenance User-facing maintenance tasks core typescript presets other modern ci:merged Run the CI jobs that normally run when merged. esm labels Jun 19, 2025
@nx-cloud
Copy link
Copy Markdown

nx-cloud Bot commented Jun 19, 2025

View your CI Pipeline Execution ↗ for commit 9ee3107

Command Status Duration Result
nx run-many -t build --parallel=3 ✅ Succeeded 44s View ↗

☁️ Nx Cloud last updated this comment at 2025-08-13 11:07:40 UTC

@storybook-app-bot
Copy link
Copy Markdown

storybook-app-bot Bot commented Jun 19, 2025

Package Benchmarks

Commit: 9ee3107, ran on 13 August 2025 at 10:33:32 UTC

The following packages have significant changes to their size or dependencies:

@storybook/addon-docs

Before After Difference
Dependency count 12 13 🚨 +1 🚨
Self size 2.47 MB 2.01 MB 🎉 -460 KB 🎉
Dependency size 8.93 MB 9.01 MB 🚨 +79 KB 🚨
Bundle Size Analyzer Link Link

@storybook/addon-jest

Before After Difference
Dependency count 2 2 0
Self size 38 KB 46 KB 🚨 +9 KB 🚨
Dependency size 53 KB 53 KB 0 B
Bundle Size Analyzer Link Link

@storybook/addon-links

Before After Difference
Dependency count 1 1 0
Self size 20 KB 15 KB 🎉 -5 KB 🎉
Dependency size 5 KB 5 KB 🎉 -5 B 🎉
Bundle Size Analyzer Link Link

@storybook/addon-onboarding

Before After Difference
Dependency count 0 0 0
Self size 228 KB 332 KB 🚨 +104 KB 🚨
Dependency size 667 B 667 B 0 B
Bundle Size Analyzer Link Link

storybook-addon-pseudo-states

Before After Difference
Dependency count 0 0 0
Self size 47 KB 23 KB 🎉 -24 KB 🎉
Dependency size 686 B 686 B 0 B
Bundle Size Analyzer Link Link

@storybook/addon-vitest

Before After Difference
Dependency count 6 6 0
Self size 550 KB 494 KB 🎉 -56 KB 🎉
Dependency size 1.49 MB 1.49 MB 0 B
Bundle Size Analyzer Link Link

@storybook/builder-vite

Before After Difference
Dependency count 5 6 🚨 +1 🚨
Self size 449 KB 374 KB 🎉 -75 KB 🎉
Dependency size 834 KB 911 KB 🚨 +77 KB 🚨
Bundle Size Analyzer Link Link

@storybook/builder-webpack5

Before After Difference
Dependency count 198 186 🎉 -12 🎉
Self size 80 KB 67 KB 🎉 -13 KB 🎉
Dependency size 31.38 MB 31.31 MB 🎉 -78 KB 🎉
Bundle Size Analyzer Link Link

storybook

Before After Difference
Dependency count 51 49 🎉 -2 🎉
Self size 41.75 MB 30.62 MB 🎉 -11.13 MB 🎉
Dependency size 18.08 MB 19.10 MB 🚨 +1.02 MB 🚨
Bundle Size Analyzer Link Link

@storybook/angular

Before After Difference
Dependency count 198 185 🎉 -13 🎉
Self size 192 KB 134 KB 🎉 -58 KB 🎉
Dependency size 29.58 MB 29.40 MB 🎉 -182 KB 🎉
Bundle Size Analyzer Link Link

@storybook/ember

Before After Difference
Dependency count 203 191 🎉 -12 🎉
Self size 28 KB 16 KB 🎉 -11 KB 🎉
Dependency size 28.12 MB 28.03 MB 🎉 -91 KB 🎉
Bundle Size Analyzer Link Link

@storybook/nextjs

Before After Difference
Dependency count 538 529 🎉 -9 🎉
Self size 903 KB 927 KB 🚨 +24 KB 🚨
Dependency size 59.14 MB 58.07 MB 🎉 -1.07 MB 🎉
Bundle Size Analyzer Link Link

@storybook/nextjs-vite

Before After Difference
Dependency count 130 130 0
Self size 3.08 MB 4.00 MB 🚨 +926 KB 🚨
Dependency size 22.30 MB 21.43 MB 🎉 -867 KB 🎉
Bundle Size Analyzer Link Link

@storybook/react-native-web-vite

Before After Difference
Dependency count 163 163 0
Self size 32 KB 31 KB 🎉 -833 B 🎉
Dependency size 23.69 MB 22.82 MB 🎉 -867 KB 🎉
Bundle Size Analyzer Link Link

@storybook/react-vite

Before After Difference
Dependency count 120 120 0
Self size 32 KB 36 KB 🚨 +4 KB 🚨
Dependency size 20.25 MB 19.38 MB 🎉 -871 KB 🎉
Bundle Size Analyzer Link Link

@storybook/react-webpack5

Before After Difference
Dependency count 286 272 🎉 -14 🎉
Self size 25 KB 25 KB 🎉 -78 B 🎉
Dependency size 43.71 MB 42.96 MB 🎉 -748 KB 🎉
Bundle Size Analyzer Link Link

@storybook/server-webpack5

Before After Difference
Dependency count 210 198 🎉 -12 🎉
Self size 17 KB 17 KB 🎉 -34 B 🎉
Dependency size 32.65 MB 32.56 MB 🎉 -97 KB 🎉
Bundle Size Analyzer Link Link

@storybook/svelte-vite

Before After Difference
Dependency count 17 18 🚨 +1 🚨
Self size 53 KB 57 KB 🚨 +4 KB 🚨
Dependency size 26.67 MB 26.65 MB 🎉 -14 KB 🎉
Bundle Size Analyzer Link Link

@storybook/vue3-vite

Before After Difference
Dependency count 105 106 🚨 +1 🚨
Self size 34 KB 38 KB 🚨 +4 KB 🚨
Dependency size 43.55 MB 43.53 MB 🎉 -20 KB 🎉
Bundle Size Analyzer Link Link

@storybook/web-components-vite

Before After Difference
Dependency count 9 10 🚨 +1 🚨
Self size 20 KB 20 KB 🎉 -289 B 🎉
Dependency size 1.36 MB 1.35 MB 🎉 -11 KB 🎉
Bundle Size Analyzer Link Link

@storybook/cli

Before After Difference
Dependency count 220 220 0
Self size 585 KB 878 KB 🚨 +294 KB 🚨
Dependency size 104.34 MB 83.28 MB 🎉 -21.06 MB 🎉
Bundle Size Analyzer Link Link

@storybook/codemod

Before After Difference
Dependency count 189 189 0
Self size 31 KB 34 KB 🚨 +4 KB 🚨
Dependency size 88.42 MB 78.36 MB 🎉 -10.06 MB 🎉
Bundle Size Analyzer Link Link

@storybook/core-webpack

Before After Difference
Dependency count 1 1 0
Self size 16 KB 12 KB 🎉 -4 KB 🎉
Dependency size 28 KB 28 KB 0 B
Bundle Size Analyzer Link Link

create-storybook

Before After Difference
Dependency count 1 50 🚨 +49 🚨
Self size 12.52 MB 1.52 MB 🎉 -11.00 MB 🎉
Dependency size 98 KB 49.72 MB 🚨 +49.62 MB 🚨
Bundle Size Analyzer node node

@storybook/csf-plugin

Before After Difference
Dependency count 3 4 🚨 +1 🚨
Self size 11 KB 9 KB 🎉 -2 KB 🎉
Dependency size 796 KB 875 KB 🚨 +79 KB 🚨
Bundle Size Analyzer Link Link

eslint-plugin-storybook

Before After Difference
Dependency count 35 35 0
Self size 321 KB 126 KB 🎉 -195 KB 🎉
Dependency size 3.39 MB 3.39 MB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook/react-dom-shim

Before After Difference
Dependency count 0 0 0
Self size 10 KB 12 KB 🚨 +2 KB 🚨
Dependency size 795 B 785 B 🎉 -10 B 🎉
Bundle Size Analyzer Link Link

@storybook/preset-create-react-app

Before After Difference
Dependency count 68 68 0
Self size 18 KB 26 KB 🚨 +8 KB 🚨
Dependency size 5.94 MB 5.94 MB 0 B
Bundle Size Analyzer Link Link

@storybook/preset-react-webpack

Before After Difference
Dependency count 177 170 🎉 -7 🎉
Self size 24 KB 26 KB 🚨 +2 KB 🚨
Dependency size 30.54 MB 30.48 MB 🎉 -61 KB 🎉
Bundle Size Analyzer Link Link

@storybook/preset-server-webpack

Before After Difference
Dependency count 10 10 0
Self size 10 KB 8 KB 🎉 -2 KB 🎉
Dependency size 1.20 MB 1.20 MB 🎉 -4 KB 🎉
Bundle Size Analyzer Link Link

@storybook/html

Before After Difference
Dependency count 2 2 0
Self size 38 KB 29 KB 🎉 -9 KB 🎉
Dependency size 32 KB 32 KB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook/preact

Before After Difference
Dependency count 2 2 0
Self size 23 KB 17 KB 🎉 -6 KB 🎉
Dependency size 32 KB 32 KB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook/react

Before After Difference
Dependency count 2 2 0
Self size 1.66 MB 872 KB 🎉 -789 KB 🎉
Dependency size 16 KB 18 KB 🚨 +2 KB 🚨
Bundle Size Analyzer Link Link

@storybook/server

Before After Difference
Dependency count 3 3 0
Self size 13 KB 9 KB 🎉 -4 KB 🎉
Dependency size 716 KB 716 KB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook/svelte

Before After Difference
Dependency count 2 2 0
Self size 64 KB 48 KB 🎉 -16 KB 🎉
Dependency size 230 KB 230 KB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook/vue3

Before After Difference
Dependency count 3 3 0
Self size 83 KB 61 KB 🎉 -22 KB 🎉
Dependency size 212 KB 212 KB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook/web-components

Before After Difference
Dependency count 3 3 0
Self size 57 KB 43 KB 🎉 -14 KB 🎉
Dependency size 47 KB 47 KB 🎉 -55 B 🎉
Bundle Size Analyzer Link Link

@storybook-bot
Copy link
Copy Markdown
Contributor

Failed to publish canary version of this pull request, triggered by @JReinhold. See the failed workflow run at: https://github.com/storybookjs/storybook/actions/runs/15754844702

@storybook-bot
Copy link
Copy Markdown
Contributor

Failed to publish canary version of this pull request, triggered by @ndelangen. See the failed workflow run at: https://github.com/storybookjs/storybook/actions/runs/15777769191

Comment thread .circleci/config.yml Outdated
Comment thread code/core/bin/loader.mjs Outdated
@storybook-bot
Copy link
Copy Markdown
Contributor

Failed to publish canary version of this pull request, triggered by @JReinhold. See the failed workflow run at: https://github.com/storybookjs/storybook/actions/runs/15786239212

Comment thread code/core/package.json Outdated
@storybook-bot
Copy link
Copy Markdown
Contributor

Failed to publish canary version of this pull request, triggered by @ndelangen. See the failed workflow run at: https://github.com/storybookjs/storybook/actions/runs/16933516098

@github-actions
Copy link
Copy Markdown
Contributor

Fails
🚫 PR is marked with "BREAKING CHANGE" label.
🚫

Please choose only one of these labels: ["BREAKING CHANGE","maintenance"]

Generated by 🚫 dangerJS against 9ee3107

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

BREAKING CHANGE ci:merged Run the CI jobs that normally run when merged. core esm maintenance User-facing maintenance tasks modern other presets typescript

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants