What’s New in Storybook 5.0’s Design
Storybook 5.0’s March 2019 redesign changed themes, story navigation, addon controls, shortcuts, URLs, and the extension points behind its new interface.
Storybook 5.0, released in March 2019, introduced the project’s first major interface redesign. It added light and dark themes, revised story navigation, a canvas toolbar for addon controls, a redesigned addons panel, configurable keyboard shortcuts, and a cleaner URL structure. It also made the redesign extensible through theme customization, addon Toolbar and Tab integrations, and the reusable @storybook/components library.
The changes affected how developers moved between stories and used addons, as well as how Storybook looked. The release materials describe design goals and new capabilities; they do not provide independent before-and-after usability measurements.
1. Why did Storybook redesign its interface?
The official launch described the redesign as a response to user feedback that had built up since 2016. Dominic Nguyen designed the new interface. The launch credits Norbert de Langen, Dominic Nguyen, Tom Coleman, Jessica Koch, Alexandre Bodin, and other contributors with implementation work.
The aim was not just a visual refresh. The release changed the organization of the workspace and provided new places for addons to put controls and views. Storybook’s 2019 retrospective describes 5.0 as a complete UI overhaul that helped set the stage for Storybook as an open-source platform.
2. What changed in Storybook 5.0?
| Area | Change | What it means for developers |
|---|---|---|
| Appearance | Hand-crafted light and dark themes, plus a theme API | Choose a built-in appearance or customize the interface theme. |
| Story navigation | Revised sidebar | Move among stories through a redesigned navigation menu. |
| Canvas | Toolbar for addon controls | Find relevant controls near the story preview. Viewport, Backgrounds, and A11y were examples in the launch post. |
| Addons panel | Redesigned panel with show/hide and orientation controls | Adjust the workspace layout and make room for the story canvas. |
| Addon views | Tabs in the main stories panel | Addons could contribute alternate views; Notes was an example. |
| Keyboard | Configurable shortcuts | Users could configure keyboard controls to suit their workflow. |
| URLs | New URL structure | Story links no longer relied on long strings of query parameters. |
| Reusable interface | @storybook/components |
Addon authors gained a shared React and Emotion component library. |
3. How did the new themes work?
Storybook 5.0 shipped with light and dark themes and a theme API for customization. The official launch describes the theme system as organized around core variables, giving theme authors a supported way to adjust the interface’s visual choices. For more advanced customization, it also pointed to the underlying Emotion theming API.
This was an extension point, not a claim that every design-system need had already been solved. The launch described a well-documented design system as a longer-term goal.
4. How did 5.0 change addons?
The redesigned canvas toolbar put addon controls in a more discoverable spot beside the preview. Viewport, Backgrounds, and A11y were named as examples of addons using the new Toolbar integration. The addons panel itself was redesigned, with options to show or hide it and change its orientation.
Addon authors could also add tabs to the main stories panel, creating space for alternate views. The launch post used Notes as an example. Together, Toolbar and Tab integrations gave addons distinct places for controls and content within the redesigned workspace.
5. Why introduce @storybook/components?
Storybook 5.0 introduced @storybook/components, a reusable UI library built with React and Emotion. The stated goals included component reuse, documenting common use cases, visual testing, and helping addon developers build interfaces that felt consistent with Storybook.
The library linked the visible redesign to a broader platform direction: shared building blocks could help addon authors extend the interface without each addon inventing its own unrelated patterns.
6. What should you compare when looking at the 4.x and 5.0 interfaces?
To understand the change, compare the releases across practical workspace tasks rather than assuming a measured speed or satisfaction improvement:
- Theme and customization: look for the built-in light and dark appearances and the theme API.
- Story navigation: compare the revised sidebar organization.
- Addon discoverability: note the canvas Toolbar integration and the redesigned addons panel.
- Workspace layout: check panel visibility, orientation, and addon tabs.
- Keyboard control: inspect configurable shortcuts.
- Shareable links: compare the newer URL structure with the long query-parameter strings it replaced.
These are feature-level comparisons. The cited release materials do not report controlled measurements of navigation speed, usability, or user satisfaction.
7. What the 2019 adoption figures do—and do not—show
Storybook’s March 2019 launch post reported more than 600 contributors, more than 34,000 GitHub stars, and more than 4.5 million monthly npm downloads. These are figures Storybook reported at that time, not current counts or independently verified measures of whether the redesign improved usability.
8. Capturing a Storybook screen for documentation
If you are documenting a component or comparing interface states, a screenshot can preserve the rendered browser view. One way is to open the Storybook story and capture it with a browser automation tool configured for your environment. Keep the viewport and theme consistent between captures, and wait for fonts and component data to finish loading before taking the image.
For a browser screenshot or visual reference, see ScreenshotNeo, a website screenshot API and MCP server for developers. It can return PNG, JPEG, WebP, or PDF from one request.
9. Or skip the browser setup
Make one GET request with the page URL. The API accepts screenshot options for viewport, full-page capture, device presets, dark mode, element selection, and more; see the ScreenshotNeo API documentation for parameters.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://storybook.js.org/releases/5.0 -o shot.webp
import requests
r = requests.get(
"https://api.screenshotneo.com/v1/shot",
params={"access_key": "YOUR_API_KEY", "url": "https://storybook.js.org/releases/5.0"},
timeout=90,
)
r.raise_for_status()
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({
access_key: 'YOUR_API_KEY',
url: 'https://storybook.js.org/releases/5.0',
});
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
if (!res.ok) throw new Error(`Screenshot request failed: ${res.status}`);
const fs = await import('node:fs/promises');
await fs.writeFile('shot.webp', Buffer.from(await res.arrayBuffer()));
- Cookie and consent banners are accepted like a visitor and more than 60 known consent platforms are removed; newsletter popups and chat widgets are removed too. Each of these steps can be turned off.
- Bot checks, blank pages, timeouts, failed loads, and cache hits cost nothing. Response headers identify the page verdict and whether the request was billed.
- An MCP server provides
take_screenshot,get_page_info, andcapture_pdftools for Claude, Cursor, and other MCP clients. - The free plan includes 1,000 screenshots per month with no card. Paid plans start at $5 for 3,000 screenshots; all features are available on every plan.
Create a free ScreenshotNeo account to get 1,000 screenshots a month with no card.
10. Troubleshooting browser captures
| Symptom | Likely cause | What to check |
|---|---|---|
| Story content is missing | The capture started before the story finished rendering, or the route needs application state. | Wait for a visible story element or a suitable readiness condition. Confirm the URL works in a clean browser session. |
| Fonts or images differ between captures | External assets have not loaded or are unavailable in the capture environment. | Wait for fonts and images, check asset URLs and network access, and keep the viewport fixed. |
| Cookie prompt obscures the page | The target site presents a consent overlay. | Handle consent in your browser workflow or use a screenshot service that processes supported consent banners. |
| Screenshot is unexpectedly long | Full-page capture includes content beyond the initial viewport, including lazy-loaded sections. | Use a viewport capture when only the visible area is needed, or check page length and lazy-loading behavior. |
| Story is at the wrong size or theme | Viewport or theme settings differ from the intended reference. | Set a repeatable viewport and explicitly choose the desired theme before capturing. |
11. Frequently asked questions
When was Storybook 5.0 released?
March 2019. Storybook’s official release overview and launch post cover the release.
Did Storybook 5.0 add dark mode?
Yes. The redesign included hand-crafted light and dark themes and a theme API for customization.
Did the redesign prove Storybook became easier to use?
The materials describe the changes and their rationale, but they do not provide an independent before-and-after usability study.
Where can I read the release account?
See Storybook’s 5.0 release overview, the official launch post, and the 2019 retrospective.
Sources
- Storybook 5.0 – March 2019, official release overview.
- Storybook 5.0, official launch post, March 5, 2019 (updated October 9, 2020).
- State of Storybook 2019, retrospective.


