Storybook has two types of integrations, addons and recipes, which are listed in the integration catalog.
Storybook addons are distributed via npm. The catalog is populated by querying npm's registry for Storybook-specific metadata in
Add your addon to the catalog by publishing a npm package that follows these requirements:
package.jsonwith module information and addon metadata
README.mdfile with installation and configuration instructions
/distdirectory containing transpiled ES5 code
preset.jsfile written as an ES5 module at the root level
Get a refresher on how to write a Storybook addon.
We rely on metadata to organize your addon in the catalog. You must add the
storybook-addons as the first keyword, followed by your addon's category. Additional keywords will be used in search and as tags.
|Addon package name||storybook-addon-outline|
|Addon description||Outline all elements with CSS to help with layout placement and alignment|
|Name of the author||winkerVSbecks|
|List of keywords to describe the addon|
Customize your addon's appearance by adding the
storybook property with the following fields.
|Link to custom icon for the addon (SVG are not supported)||https://yoursite.com/outline-icon.png|
|List of unsupported frameworks|
|List of supported frameworks|
Use the list below as a reference when filling in the values for both the
Make sure to copy each item exactly as listed so that we can properly index your addon in our catalog.
package.json above appears like below in the catalog. See an example of a production package.json here.
Once you publish the addon, it will appear in the catalog. There may be a delay between the time you publish your addon and when it's listed in the catalog. If your addon doesn't show up within 24 hours, open an issue.
Recipes are a set of instructions to integrate third-party libraries into Storybook in cases where an addon does not exist or the integration requires some manual effort.
Recipes are written and maintained by the Storybook team. We create recipes based on community popularity, tool maturity, and stability of the integration. Our goal is to ensure that recipes continue to work over time.
Not finding the recipe that you want? If it's popular in the community, our docs team will write one. In the mean time, try searching for a solution — it's likely that someone has the same requirements as you do. You can also help us out by writing recipes on your own site which speeds up the research process.
If you'd like to request a recipe, open a new discussion in our GitHub repo. We'll review your request, and if it's popular, we'll add it to our backlog and prioritize it.