kibana/packages/kbn-storybook
Nathan L Smith 99e90aa120
Use Storybook Controls instead of Knobs (#80705)
* Change an example in embeddable to use controls instead of knobs
* Add controls to SyncBadge APM story
* Convert both to [CSF](https://storybook.js.org/docs/react/api/csf)
* Remove the Knobs addon from the default Storybook configuration

Do not remove the Knobs addon package, since Canvas is still using it and this does not change anything in Canvas.
2020-10-21 15:43:57 -05:00
..
lib Use Storybook Controls instead of Knobs (#80705) 2020-10-21 15:43:57 -05:00
index.ts Storybook 6 and config changes (#75357) 2020-09-29 19:34:05 -05:00
package.json Add Storybook a11y addon (#80069) 2020-10-15 17:25:34 -05:00
preset.js Storybook 6 and config changes (#75357) 2020-09-29 19:34:05 -05:00
README.md Storybook 6 and config changes (#75357) 2020-09-29 19:34:05 -05:00
tsconfig.json Storybook 6 and config changes (#75357) 2020-09-29 19:34:05 -05:00
typings.d.ts Storybook 6 and config changes (#75357) 2020-09-29 19:34:05 -05:00
webpack.config.ts chore(NA): assures a single version for the same dependency across the entire project (#78825) 2020-10-02 00:46:00 +01:00

Kibana Storybook

This package provides ability to add Storybook to any Kibana plugin.

Setup Instructions

  • Add a .storybook/main.js configuration file to your plugin. For example, create a file at src/plugins/<plugin>/.storybook/main.js, with the following contents:

    module.exports = require('@kbn/storybook').defaultConfig;
    
  • Add your plugin alias to src/dev/storybook/aliases.ts config.

  • Create sample Storybook stories. For example, in your plugin create a file at src/plugins/<plugin>/public/components/hello_world/hello_world.stories.tsx with the following Component Story Format contents:

    import { MyComponent } from './my_component';
    
    export default {
      component: MyComponent,
      title: 'Path/In/Side/Navigation/ToComponent',
    };
    
    export function Example() {
      return <MyComponent />;
    }
    
  • Launch Storybook with yarn storybook <plugin>, or build a static site with yarn storybook --site <plugin>.

Customizing configuration

The defaultConfig object provided by the @kbn/storybook package should be all you need to get running, but you can override this in your .storybook/main.js. Using Storybook's configuration options.