> Portal Navigation:
>
> - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version.
> - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages).
> - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`).
> - Top-level index of all portals: https://dev.wix.com/docs/llms.txt
> - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt
## Resource: Installation
## Article: Installation
## Article Link: https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/editor-react-components/manifest-reference/root-properties/installation.md
## Article Content:
import { Property, PropertyList, ExpandableSection } from "@wix/docs-ui/content";
# Installation
__Alpha:__
Editor React Components are currently in alpha. This feature is subject to change and may have bugs, issues, and limitations. We're actively improving it based on your feedback.
The `installation` property controls how your component appears when a Wix user first adds it to a page, including its initial dimensions, which preset it starts with, and where it's placed. It works together with [`layout`](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/editor-react-components/manifest-reference/editor-element/layout.md): `installation` sets the starting size, and `layout` controls how the Wix user can resize from there.
## Where to define
You can only define `installation` at the root level of your manifest, alongside properties like `type` and `editorElement`. See the [manifest structure](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/editor-react-components/manifest-reference/root-properties/root-properties.md).
## Installation properties
The `installation` object supports the following properties:
Specify different presets for different screen sizes to ensure your component adapts appropriately. The values must match keys defined in your component's [presets](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/editor-react-components/manifest-reference/editor-element/presets.md) configuration.
## Initial size
The `initialSize` property controls the starting dimensions when a Wix user first adds your component to a page. Each dimension (`width` and `height`) is configured independently with a sizing type.
## Examples
### Fixed width with content-driven height
The component has a set width but grows vertically to fit its content. This is the most common pattern, used by text components, accordions, and tabs.
```typescript
installation: {
initialSize: {
width: {
sizingType: 'pixels',
pixels: 400,
},
height: {
sizingType: 'content',
},
},
}
```
### Full-width with content-driven height
The component stretches to fill its parent section while the height adjusts to content. Useful for banners, marquees, and full-width layouts.
```typescript
installation: {
initialSize: {
width: {
sizingType: 'stretched',
},
height: {
sizingType: 'content',
},
},
}
```
### Fully content-driven
Both dimensions adjust to the component's content. This works for components with an intrinsic size, like icon bars or badges.
```typescript
installation: {
initialSize: {
width: {
sizingType: 'content',
},
height: {
sizingType: 'content',
},
},
}
```
### Fixed dimensions with aspect ratio lock
The component maintains its width-to-height ratio when the user resizes it. Use `preserveAspectRatio` only when both dimensions use `'pixels'` sizing. Primarily useful for media components like images, videos, and logos.
```typescript
installation: {
initialSize: {
width: {
sizingType: 'pixels',
pixels: 320,
},
height: {
sizingType: 'pixels',
pixels: 240,
},
preserveAspectRatio: true,
},
}
```
### Different presets for desktop and mobile
```typescript
{
installation: {
initialSize: {
width: { sizingType: 'pixels', pixels: 320 },
height: { sizingType: 'pixels', pixels: 240 },
},
presets: {
large: 'desktopCard',
small: 'mobileCard',
},
},
editorElement: {
presets: {
desktopCard: {
displayName: 'Desktop Layout',
presetCssUrl: './presets/desktop.css',
initialSize: {
width: { sizingType: 'pixels', pixels: 600 },
height: { sizingType: 'pixels', pixels: 400 },
},
},
mobileCard: {
displayName: 'Mobile Layout',
presetCssUrl: './presets/mobile.css',
initialSize: {
width: { sizingType: 'pixels', pixels: 300 },
height: { sizingType: 'pixels', pixels: 200 },
},
},
},
},
}
```
## See also
- [Layout](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/editor-react-components/manifest-reference/editor-element/layout.md)
- [About the Manifest](https://dev.wix.com/docs/build-apps/develop-your-app/extensions/site-extensions/editor-react-components/manifest-reference/about-the-manifest.md)