superset/superset-frontend/temporary_superset_ui/superset-ui/packages/superset-ui-demo
Chris Williams 010890ae76 [demo] add package + storybook (#25)
* [demo] add package + storybook

* [demo] add color stories

* [demo] update readme, add gh-pages hooks, remove vx deps

* [demo] remove nesting for color stories

* [gh-pages] run postrelease

* [gh-pages] add link in readme

* [demo] exclude demo package from build script
2021-11-26 11:44:33 +08:00
..
storybook [demo] add package + storybook (#25) 2021-11-26 11:44:33 +08:00
storybook-config [demo] add package + storybook (#25) 2021-11-26 11:44:33 +08:00
package.json [demo] add package + storybook (#25) 2021-11-26 11:44:33 +08:00
README.md [demo] add package + storybook (#25) 2021-11-26 11:44:33 +08:00

@superset-ui/demo

Version David (path)

Storybook of @superset-ui packages. See it live at apache-superset.github.io/superset-ui

Development

Run storybook

To view the storybook locally, you should first run yarn install && yarn run bootstrap in the @superset-ui monorepo root directory, which will install all dependencies for this package and sym-link any @superset-ui packages to your local system.

After that run yarn run storybook which will open up a dev server at http://localhost:9001.

Adding new stories

Existing package

If stories already exist for the package you are adding, simply extend the examples already exported for that package in the storybook/stories/<package>/index.js file.

New package

If you are creating stories for a package that doesn't yet have any stories, follow these steps:

  1. Add any new package dependencies (including any @superset-ui/* packages) via yarn add <package>.

  2. Create a new folder that mirrors the package name

    e.g., mkdir storybook/stories/superset-ui-color/

  3. Add an index.js file to that folder with a default export with the following shape:

you can use the | separator within the storyPath string to denote nested stories e.g., storyPath: '@superset-ui/package|Nested i|Nested ii'

 default export {
   examples: [
     {
       storyPath: <string>,
       storyName: <string>,
       renderStory: <func> () => node,
     },
     ...
   ]
 };