> **Version 9** — **React** / **TypeScript**
> Also available:
- `?language=js` for JavaScript
- `?codeOnly=true` for code snippets only
- other versions: Version 10.3 (latest) (`/docs/api/main-config/main-config-features.md`), Version 8 (`/docs/8/api/main-config/main-config-features.md`)

# features

Parent: [main.js|ts configuration](./main-config.mdx)

Type:

```ts
{
  actions?: boolean;
  angularFilterNonInputControls?: boolean;
  argTypeTargetsV7?: boolean;
  backgrounds?: boolean;
  controls?: boolean;
  developmentModeForBuild?: boolean;
  highlight?: boolean;
  interactions?: boolean;
  legacyDecoratorFileOrder?: boolean;
  measure?: boolean;
  outline?: boolean;
  toolbars?: boolean;
  viewport?: boolean;
}
```

Enables Storybook's additional features.

## `actions`

Type: `boolean`

Enable the [Actions](../../essentials/actions.mdx) feature.

## `angularFilterNonInputControls`

Type: `boolean`

Filter non-input controls in Angular.

## `argTypeTargetsV7`

(⚠️ **Experimental**)

Type: `boolean`

Filter args with a "target" on the type from the render function.

```ts
// .storybook/main.ts
// Replace your-framework with the framework you are using, e.g. react-vite, nextjs, vue3-vite, etc.

const config: StorybookConfig = {
  framework: '@storybook/your-framework',
  stories: ['../src/**/*.mdx', '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
  features: {
    argTypeTargetsV7: true,
  },
};

export default config;
```

## `backgrounds`

Type: `boolean`

Enable the [Backgrounds](../../essentials/backgrounds.mdx) feature.

## `controls`

Type: `boolean`

Enable the [Controls](../../essentials/controls.mdx) feature.

## `developmentModeForBuild`

Type: `boolean`

Set `NODE_ENV` to `'development'` in built Storybooks for better testing and debugging capabilities.

```ts
// .storybook/main.ts
// Replace your-framework with the framework you are using, e.g. react-vite, nextjs, vue3-vite, etc.

const config: StorybookConfig = {
  framework: '@storybook/your-framework',
  stories: ['../src/**/*.mdx', '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
  features: {
    developmentModeForBuild: true,
  },
};

export default config;
```

## `highlight`

Type: `boolean`

Enable the [Highlight](../../essentials/highlight.mdx) feature.

## `interactions`

Type: `boolean`

Enable the [Interactions](../../writing-tests/interaction-testing.mdx#debugging-interaction-tests) feature.

## `legacyDecoratorFileOrder`

Type: `boolean`

Apply decorators from preview.js before decorators from addons or frameworks. [More information](https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#changed-decorator-order-between-previewjs-and-addonsframeworks).

```ts
// .storybook/main.ts
// Replace your-framework with the framework you are using, e.g. react-vite, nextjs, vue3-vite, etc.

const config: StorybookConfig = {
  framework: '@storybook/your-framework',
  stories: ['../src/**/*.mdx', '../src/**/*.stories.@(js|jsx|mjs|ts|tsx)'],
  features: {
    legacyDecoratorFileOrder: true,
  },
};

export default config;
```

## `measure`

Type: `boolean`

Enable the [Measure](../../essentials/measure-and-outline.mdx#measure) feature.

## `outline`

Type: `boolean`

Enable the [Outline](../../essentials/measure-and-outline.mdx#outline) feature.

## `toolbars`

Type: `boolean`

Enable the [Toolbars](../../essentials/toolbars.mdx) feature.

## `viewport`

Type: `boolean`

Enable the [Viewport](../../essentials/viewport.mdx) feature.