You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Michael Shilman 66d1692676
Merge pull request #13676 from storybookjs/update-stories-with-flaky-snapshots
22 hours ago
.ci/danger CHANGE lodash imports to lodash/* 11 months ago
.circleci upgrade cypress image 6 days ago
.github Cleanup: Remove some references to dependency:update label 6 days ago
.teamcity cleanup teamcity 1 month ago
.vscode re-read the newly created package,json 1 year ago
__mocks__ spelling: store 3 months ago
addons Update git head to 6.2.0-alpha.16 5 days ago
app Merge pull request #13676 from storybookjs/update-stories-with-flaky-snapshots 22 hours ago
cypress Try with the 'attr' method. 3 months ago
dev-kits Update git head to 6.2.0-alpha.16 5 days ago
docs Merge pull request #13510 from storybookjs/chore_vue_snippets 1 day ago
examples v6.2.0-alpha.16 5 days ago
lib Merge pull request #13676 from storybookjs/update-stories-with-flaky-snapshots 22 hours ago
media Replace old intro animation with new hotness 1 year ago
packs Remove the `test-cra` example app. 3 years ago
scripts Merge branch 'next' into fix/sb-cli-prompt 1 week ago
.babelrc.js Change /dist to ESM && upgrade required dependencies to make this happen & deal with the consequences 1 month ago
.bettercodehub.yml Add storyshot as a test file 2 years ago
.editorconfig Missing svelte editor config 2 years ago
.eslintignore Don't lint the prebuilt files. 2 months ago
.eslintrc.js upgrades 1 month ago
.gitattributes Add .gitattributes and identify yarn as binary file 1 year ago
.gitignore move ts3.4 into dist, generate types into dist/ts3.9, make esm dist for all, fix issues 1 month ago
.mailmap Update .mailmap 2 years ago
.prettierrc FIX 8 months ago
.remarkignore Add to remarkignore 2 years ago
.remarkrc.js Use the extracted linting configs 1 year ago
.spelling Remove unused token 3 months ago
.travis.yml Make travis a no-op 1 year ago Merge branch 'next' of into next 6 months ago 6.2.0-alpha.16 changelog 5 days ago fix typo 1 year ago Removing references to CLI tests from 3 weeks ago
LICENSE Merge branch 'next' into tech/overhaul-ui 2 years ago Cleanup: Remove some references to dependency:update label 6 days ago Merge branch 'next' into angular-parameters-component 1 month ago 6.0 => 6.1 2 months ago Removed instances of obvious, of course 1 year ago Update 6 months ago
cypress.json core: ci and examples generation 8 months ago
jest.config.js test: execute CLI tests like all other Jest tests 1 month ago
lerna.json v6.2.0-alpha.16 5 days ago
netlify.toml bump yarn version in netlify 6 days ago
package.json Update root, peer deps, version.ts/json to 6.2.0-alpha.16 5 days ago
prettier.config.js FIX deepscan issues hopefully 8 months ago
riot-jest-transformer.json cheating on the riot jest transformer to use babel 7 2 years ago
tsconfig.json test: add test for RenderNgAppService 1 month ago
yarn.lock Merge pull request #13651 from phated/phated/inquirer-types 5 days ago


Build bulletproof UI components faster

Build Status on CircleCI CodeFactor Known Vulnerabilities codecov License
Storybook Community Backers on Open Collective Sponsors on Open Collective Official Twitter Handle

Storybook is a development environment for UI components. It allows you to browse a component library, view the different states of each component, and interactively develop and test components. Find out more at

View README for:
latest next

Table of contents

Getting Started

Visit Storybook's website to learn more about Storybook, and to get started.


Documentation can be found Storybook's docs site.


Here are some featured examples that you can reference to see how Storybook works:

Storybook comes with a lot of addons for component design, documentation, testing, interactivity, and so on. Storybook's API makes it possible to configure and extend in various ways. It has even been extended to support React Native development for mobile.


For additional help, join us in our Discord or Slack (legacy).


Supported Frameworks

Framework Demo
React v6.1.x React
React Native - React Native
Vue v6.1.x Vue
Angular v6.1.x Angular
Marionette.js - Marionette.js
Mithril v6.1.x Mithril
Marko v6.1.x Marko
HTML v6.1.x HTML
Svelte v6.1.x Svelte
Riot v6.1.x Riot
Ember v6.1.x Ember
Preact v6.1.x Preact
Rax v6.1.x Rax

Sub Projects

  • CLI - Streamlined installation for a variety of app types
  • examples - Code examples to illustrate different Storybook use cases


a11y Test components for user accessibility in Storybook
actions Log actions as users interact with components in the Storybook UI
backgrounds Let users choose backgrounds in the Storybook UI
cssresources Dynamically add/remove css resources to the component iframe
design assets View images, videos, weblinks alongside your story
docs Add high quality documentation to your components
events Interactively fire events to components that respond to EventEmitter
google-analytics Reports google analytics on stories
graphql Query a GraphQL server within Storybook stories
jest View the results of components' unit tests in Storybook
knobs Interactively edit component prop data in the Storybook UI
links Create links between stories
query params Mock query params
storyshots Snapshot testing for components in Storybook
storysource View the code of your stories within the Storybook UI
viewport Change display sizes and layouts for responsive components using Storybook

See Addon / Framework Support Table

Deprecated Addons

info Annotate stories with extra component usage information
notes Annotate Storybook stories with notes
contexts Addon for driving your components under dynamic contexts
options Customize the Storybook UI in code

In order to continue improving your experience, we have to eventually deprecate certain addons in favor of new, better tools.

If you're using info/notes, we highly recommend you to migrate to docs instead, and here is a guide to help you.

If you're using contexts, we highly recommend you to migrate to toolbars and here is a guide to help you.

Badges & Presentation materials

We have a badge! Link it to your live Storybook example.


[![Storybook](](link to site)

If you're looking for material to use in your presentation about storybook, like logo's video material and the colors we use etc, you can find all of that at our brand repo.



We welcome contributions to Storybook!

  • 📥 Pull requests and 🌟 Stars are always welcome.
  • Read our contributing guide to get started, or find us on Discord, we will take the time to guide you

Looking for a first issue to tackle?

  • We tag issues with Good First Issue when we think they are well suited for people who are new to the codebase or OSS in general.
  • Talk to us, we'll find something to suits your skills and learning interest.

Development scripts

Storybook is organized as a monorepo using Lerna. Useful scripts include:

yarn bootstrap

Installs package dependencies and links packages together - using lerna

yarn lint

boolean check if code conforms to linting rules - uses remark & eslint

  • yarn lint:js - will check js
  • yarn lint:md - will check markdown + code samples
  • yarn lint:js --fix - will automatically fix js

yarn test

boolean check if unit tests all pass - uses jest

  • yarn run test --core --watch - will run core tests in watch-mode


Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]


Support us with a monthly donation and help us continue our activities. [Become a backer]



-the end-