kibana/packages/kbn-storybook
Nathan L Smith f254ee682c
[kbn-storybook] Use raw loader for text files (#64108)
Starting Storybook (with `yarn storybook apm`) was failing to start because it was having trouble loading Angular .html templates.

Use the raw loader in the webpack config for storybook, same as the Webpack config in kbn-optimizer.
2020-04-21 17:12:36 -05:00
..
lib
storybook_config [kbn-storybook] Use raw loader for text files (#64108) 2020-04-21 17:12:36 -05:00
index.js fix: 🐛 make dev server Storybook builds work again (#58188) 2020-02-21 07:47:58 +01:00
package.json upgrade execa to get stdout/stderr in error messages (#60537) 2020-03-18 17:45:04 -07:00
README.md
yarn.lock Add lockfile symlinks (#55440) 2020-01-27 11:38:20 -05:00

Kibana Storybook

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

Setup Instructions

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

    import { join } from 'path';
    
    // eslint-disable-next-line
    require('@kbn/storybook').runStorybookCli({
      name: '<plugin>',
      storyGlobs: [join(__dirname, '..', 'public', 'components', '**', '*.examples.tsx')],
    });
    
  2. Add your plugin alias to src/dev/storybook/aliases.ts config.

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

    import * as React from 'react';
    import { storiesOf } from '@storybook/react';
    
    storiesOf('Hello world', module).add('default', () => <div>Hello world!</div>);
    
  4. Launch Storybook with yarn storybook <plugin>.