Skip to main content

Box

A generic container for custom layouts. Renders as a <div> with your styles applied directly — ideal for building custom overlays on the OBS layer.
VisionStyle
Custom inline styles applied to the container.
ReactNode
Child components.

CompactView

The main container for extension panels. Stacks children vertically with an optional title.
Use CompactView as the root of every panel. The title prop renders a heading above the content.
string
Heading displayed above the content.
ReactNode
Child components.

List

A vertical stack with configurable spacing. Use it to group related fields with consistent gaps.
number
default:"8"
Space between children in pixels.
ReactNode
Child components.
Nest a List inside a CompactView when you have multiple fields that need more breathing room than the default spacing.

VStack and HStack

VStack and HStack are SwiftUI-style stack wrappers around Box:
  • VStack enforces display: "flex" + flexDirection: "column"
  • HStack enforces display: "flex" + flexDirection: "row"
Use them when you want predictable flex layout without repeating style boilerplate.
string | number
Sets flex gap.
string
Sets alignItems.
string
Sets justifyContent.
string
Sets flexWrap.
VisionStyle
Additional style fields merged in with the stack defaults.
ReactNode
Child components.