rbardini / storybook-addon-paddings

🔲 A Storybook addon to add different paddings to your preview
https://storybook-addon-paddings.rbrd.in
MIT License
30 stars 2 forks source link
margin padding spacing storybook-addon style whitespace

Storybook Paddings Addon

npm package version Build status Dependencies status

🔲 A Storybook addon to add different paddings to your preview. Useful for checking how components behave when surrounded with white space.

Demo

View demo →

Installation

npm install --save-dev storybook-addon-paddings
// .storybook/main.js
export default {
  addons: ['storybook-addon-paddings'],
}

// .storybook/preview.js
export default {
  parameters: {
    layout: 'fullscreen', // remove default Storybook padding
  },
}

Configuration

The paddings toolbar comes with small, medium and large options by default, but you can configure your own set of paddings via the paddings parameter.

To configure for all stories, set the paddings parameter in .storybook/preview.js:

export const parameters = {
  paddings: {
    values: [
      { name: 'Small', value: '16px' },
      { name: 'Medium', value: '32px' },
      { name: 'Large', value: '64px' },
    ],
    default: 'Medium',
  },
}

You can also configure on per-story or per-component basis using parameter inheritance:

// Button.stories.js

// Set padding options for all Button stories
export default {
  title: 'Button',
  component: Button,
  parameters: {
    paddings: {
      values: [
        { name: 'Small', value: '16px' },
        { name: 'Medium', value: '32px' },
        { name: 'Large', value: '64px' },
      ],
      default: 'Large',
    },
  },
}

// Disable addon in Button/Large story only
export const Large {
  parameters: {
    paddings: { disable: true },
  },
}

See other story examples.