{}OPF
DocsObject referenceEdit on GitHub

Design

Visual design system applied to the presentation; individual slides may override fields via Slide.design.

Metadata

Definition

#/$defs/Design

Type

object

Source

spec/schemas/opf.schema.json

Fields

FieldTypeReqDescription
themestring | ref:ThemeTheme for the deck. Accepts two forms: - String shorthand: 'design.theme = "minimal"'. Bare id, HTTPS URL, or 'pkg:' reference resolved as the 'id' of a 'themes' catalog record. - Object form: a Theme with an optional 'id' base reference plus theme-level overrides. Inline overri…
colorSchemestring | ref:ColorSchemeColor scheme for the presentation. Accepts two forms: - String shorthand: 'design.colorScheme = "cool-horizon"'. Bare id, HTTPS URL, or 'pkg:' reference resolved as the 'id' of a 'colorSchemes' catalog record. - Object form: a ColorScheme with an optional 'id' base reference plu…
fontSchemestring | ref:FontSchemeFont scheme for heading, body, accent, and code text. Accepts two forms: - String shorthand: 'design.fontScheme = "aptos"'. Bare id, HTTPS URL, or 'pkg:' reference resolved as the 'id' of a 'fontSchemes' catalog record. - Object form: a FontScheme with an optional 'id' base refe…
dimensionsref:DimensionPreset | ref:DimensionsSlide dimensions and aspect ratio. String shorthand such as 'widescreen' is equivalent to { preset: 'widescreen' }.
backgroundref:BackgroundShortcut | ref:BackgroundDefault slide background applied across the deck unless overridden on a slide. String shorthand accepts theme slots ('light1', 'light2', 'dark1', 'dark2') or hex colors; object forms support theme, solid, gradient, image, or pattern fills.
logoref:Asset | ref:LogoSetDeck logo assets used by layouts, covers, section dividers, headers, and footers. A string is the default logo source; object form provides light/dark, stacked, icon, and wordmark variants. When omitted, the renderer falls back to the primary organization logo.
watermarkconst | ref:Asset | ref:WatermarkOptional decorative watermark applied across slides. Use false to suppress an inherited watermark in slide-level design; a string is equivalent to { src: value }.
headerconst | ref:HeaderFooterRepeated header furniture rendered outside the main slide content. Use false to suppress an inherited header.
footerconst | ref:HeaderFooterRepeated footer furniture rendered outside the main slide content. Use false to suppress an inherited footer.
titleAlignmentenumDefault horizontal alignment for title placeholders in resolved layouts.
contentAlignmentenumDefault horizontal alignment for body/content regions in resolved layouts.
contentBoxbooleanWhether body/content regions are rendered inside a visible card or surface.
slideImageref:Asset | objectOptional slide-level image treatment used by layouts that support a decorative or editorial image separate from content images.
contentDirectionenumAxis along which parallel body/content regions are arranged.
chartPrimaryenumFor chart layouts, where the primary chart sits relative to supporting content. 'none' means chart regions have equal weight.
imageFillenumHow picture placeholders fill their allocated region.
listBulletenumDefault bullet rendering style for list layouts.

theme

Type: string | ref:Theme · Optional · Default:

Theme for the deck. Accepts two forms: - String shorthand: 'design.theme = "minimal"'. Bare id, HTTPS URL, or 'pkg:' reference resolved as the 'id' of a 'themes' catalog record. - Object form: a Theme with an optional 'id' base reference plus theme-level overrides. Inline overri…

theme.json
{
  "theme": "minimal"
}

colorScheme

Type: string | ref:ColorScheme · Optional · Default:

Color scheme for the presentation. Accepts two forms: - String shorthand: 'design.colorScheme = "cool-horizon"'. Bare id, HTTPS URL, or 'pkg:' reference resolved as the 'id' of a 'colorSchemes' catalog record. - Object form: a ColorScheme with an optional 'id' base reference plu…

colorScheme.json
{
  "colorScheme": "cool-horizon"
}

fontScheme

Type: string | ref:FontScheme · Optional · Default:

Font scheme for heading, body, accent, and code text. Accepts two forms: - String shorthand: 'design.fontScheme = "aptos"'. Bare id, HTTPS URL, or 'pkg:' reference resolved as the 'id' of a 'fontSchemes' catalog record. - Object form: a FontScheme with an optional 'id' base refe…

fontScheme.json
{
  "fontScheme": "aptos"
}

dimensions

Type: ref:DimensionPreset | ref:Dimensions · Optional · Default:

Slide dimensions and aspect ratio. String shorthand such as 'widescreen' is equivalent to { preset: 'widescreen' }.

dimensions.json
{
  "dimensions": "widescreen"
}

background

Type: ref:BackgroundShortcut | ref:Background · Optional · Default:

Default slide background applied across the deck unless overridden on a slide. String shorthand accepts theme slots ('light1', 'light2', 'dark1', 'dark2') or hex colors; object forms support theme, solid, gradient, image, or pattern fills.

background.json
{
  "background": "dark1"
}

watermark

Type: const | ref:Asset | ref:Watermark · Optional · Default:

Optional decorative watermark applied across slides. Use false to suppress an inherited watermark in slide-level design; a string is equivalent to { src: value }.

watermark.json
{
  "watermark": false
}

titleAlignment

Type: enum · Optional · Default:

Default horizontal alignment for title placeholders in resolved layouts.

titleAlignment.json
{
  "titleAlignment": "left"
}

contentAlignment

Type: enum · Optional · Default:

Default horizontal alignment for body/content regions in resolved layouts.

contentAlignment.json
{
  "contentAlignment": "left"
}

contentBox

Type: boolean · Optional · Default:

Whether body/content regions are rendered inside a visible card or surface.

contentBox.json
{
  "contentBox": true
}

slideImage

Type: ref:Asset | object · Optional · Default:

Optional slide-level image treatment used by layouts that support a decorative or editorial image separate from content images.

slideImage.json
{
  "slideImage": "slideImage-value"
}

contentDirection

Type: enum · Optional · Default:

Axis along which parallel body/content regions are arranged.

contentDirection.json
{
  "contentDirection": "horizontal"
}

chartPrimary

Type: enum · Optional · Default:

For chart layouts, where the primary chart sits relative to supporting content. 'none' means chart regions have equal weight.

chartPrimary.json
{
  "chartPrimary": "none"
}

imageFill

Type: enum · Optional · Default:

How picture placeholders fill their allocated region.

imageFill.json
{
  "imageFill": "crop"
}

listBullet

Type: enum · Optional · Default:

Default bullet rendering style for list layouts.

listBullet.json
{
  "listBullet": "character"
}