storybook-preset-inline-svg
A Storybook preset to load SVG files inline using svg-inline-loader.
Basic Usage
First npm install storybook-preset-inline-svg svg-inline-loader
Storybook 10+ uses ESM-only config. Update .storybook/main.ts (or .storybook/main.js):
export default {
addons: ['storybook-preset-inline-svg'],
}
TypeScript example with types:
import type { StorybookConfig } from '@storybook/react'
const config: StorybookConfig = {
addons: ['storybook-preset-inline-svg'],
}
export default config
Advanced Usage
By default this preset will inline all SVG files. Use options to filter which SVG files are inlined, or to pass options along to svg-inline-loader.
None of the options are required. Only use one of include or exclude, not both, which can be a RegExp or Function.
svgInlineLoaderOptionsoptions supported by svg-inline-loaderincludefiles to be inlined using includeexcludefiles from being inlined using exclude
For example,
export default {
addons: [
{
name: 'storybook-preset-inline-svg',
options: {
include: /source\/.+\.svg$/,
svgInlineLoaderOptions: {
removeTags: true,
removingTags: ['circle'],
},
},
},
],
}