--- title: 'core' --- Parent: [main.js|ts configuration](./main-config.md) Type: ```ts { builder?: string | { name: string; options?: BuilderOptions }; channelOptions?: ChannelOptions; crossOriginIsolated?: boolean; disableProjectJson?: boolean; disableTelemetry?: boolean; disableWebpackDefaults?: boolean; disableWhatsNewNotifications?: boolean; enableCrashReports?: boolean; renderer?: RendererName; } ``` Configures Storybook's internal features. ## `builder` Type: ```ts | '@storybook/builder-vite' | '@storybook/builder-webpack5' | { name: '@storybook/builder-vite' | '@storybook/builder-webpack5'; options?: BuilderOptions; } ``` Configures Storybook's builder, [Vite](../builders/vite.md) or [Webpack](../builders/webpack.md). With the new [Framework API](./new-frameworks.md), [`framework.options.builder`](./main-config-framework.md#optionsbuilder) is now the preferred way to configure the builder. You should only use `core.builder.options` if you need to configure a builder that is not part of a framework. ## `channelOptions` Type: `ChannelOptions` ```ts { allowClass: boolean; allowDate: boolean; allowFunction: boolean; allowRegExp: boolean; allowSymbol: boolean; allowUndefined: boolean; lazyEval: boolean; maxDepth: number; space: number | undefined; } ``` Configures the channel used by Storybook to communicate between the manager and preview. Only two properties are likely to be used: ### `channelOptions.allowFunction` Type: `boolean` Default: `false` Enables serializing functions across the channel, which can be a security risk. ### `channelOptions.maxDepth` Type: `number` Default: `3` The maximum depth of nested objects to serialize across the channel. Larger values will be slower. ## `crossOriginIsolated` Type: `boolean` Enable CORS headings to run document in a "secure context". See [SharedArrayBuffer security requirements](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer#security_requirements) This enables these headers in development-mode: - `Cross-Origin-Opener-Policy: same-origin` - `Cross-Origin-Embedder-Policy: require-corp` ## `disableProjectJson` Type: `boolean` Disables the generation of `project.json`, a file containing Storybook metadata ## `disableTelemetry` Type: `boolean` Disables Storybook's [telemetry collection](../configure/telemetry.md). ## `disableWebpackDefaults` Type: `boolean` Disables Storybook's default Webpack configuration. ## `disableWhatsNewNotifications` Type: `boolean` Disables the "What's New" notifications in the UI for new Storybook versions and ecosystem updates (e.g., [addons](https://storybook.js.org/integrations/), [content](https://storybook.js.org/blog/), etc.). ## `enableCrashReports` Type: `boolean` Enable crash reports to be sent to Storybook [telemetry](../configure/telemetry.md). ## `renderer` Type: `RendererName`