drawing_diagram

Renders an animated flow diagram (nodes and directed edges) as a video clip.

When to use

Use to visualize system architectures, workflows, or any graph with labeled nodes and connections. Nodes can display company logos.

In the editor

Add it from the Library (Overlays group), or with + add step and a search for drawing_diagram.

It takes no inputs. The diagram is described by two fields: nodes, the boxes, each with an id and the label to show (set logo: true on one to show a company logo instead of text), and edges, the arrows, each naming the node it comes from and the node it goes to. Both are free-form fields, so the YAML tab is often the more comfortable place to type them, and hovering a key there explains what belongs in it.

duration_sec is the time on screen, position_sec an exact placement (empty means the next free gap), and Output Level with the level parameter decide where the clip sits. Colors are background and brand_palette.

You get one clip in the run timeline. Diagrams get busy quickly, so preview before shipping: a handful of boxes reads at video size, a dozen does not.

YAML Example

- id: arch_diagram
  processor: drawing_diagram
  params:
    nodes:
      - id: producer
        label: "Producer App"
      - id: kafka
        label: "Redpanda"
        logo: true
      - id: consumer
        label: "Consumer App"
    edges:
      - from: producer
        to: kafka
      - from: kafka
        to: consumer
    duration_sec: 6.0
    background: "solid:#1a1a2e"
    brand_palette: "e94560,0f3460"
    level: broll
  output:
    timeline: broll

Params

Param Type Default Description
duration_sec duration (s) 5 Clip duration
position_sec duration (s) 0 Place the clip at this timeline position (seconds). When omitted, the next available gap is used.
level level "broll" Output timeline level
background string "auto" "auto" or "solid:#rrggbb"
brand_palette string none Comma-separated hex colors
animation_style string none Override default animation style for this drawing type
padding_pct number 8 Padding as % of frame
safe_zone_bottom_pct number 0 Keep this percentage of the bottom frame height clear (for captions)
nodes text none Each: {id, label, logo?}. Set logo: true to substitute a company logo for the label.
edges text none Each: {from, to} using node IDs

Output

EditDecisions: one clip on the configured level.