Integrate Styled Components and Storybook
Styled Components is a css-in-js framework to build fast and functional components. This recipe shows you how to get the most out of Styled Components in Storybook.
Run the following script to install and register the addon:
This will run a configuration script that will walk you through setting up the addon. When prompted, select
styled-components from the configuration options.
Did the configuration script fail?
Under the hood, this runs
npx @storybook/auto-config themes, which should read your project and try to configure your Storybook with the correct decorator. If running that command directly does not solve your problem, please file a bug on the @storybook/auto-config repository so that we can further improve it. To manually add this addon, install it, and then add it to the addons array in your
.storybook/preview.js, create a
<GlobalStyles /> component that includes a
font-family. Then apply it to your stories with the
withThemeFromJSXProvider decorator by adding it to the
If you already have
<GlobalStyles /> in your app, you can import it into
.storybook/preview.js instead of creating it anew.
To share your theme(s) with the components in Storybook, you'll need to provide them to the
withThemeFromJSXProvider decorator along with
<ThemeProvider /> component.
When you provide more than one theme, a toolbar menu will appear in the Storybook UI to select your desired theme for your stories.
Now you're ready to use styled-components with Storybook. 🎉