YADL Docs
YADL Docs
YADL documentation
Create your first visual
Use the YADL editorAdd icons, illustrations, logos, people, and backgroundsStart with templatesReuse visual components
Use the timelineAnimate a visual storyWork with audioPrepare a video frameExport an imageExport video
Manage your YADL accountPlans and billingNotifications
YADL source languageYADL syntax and capability referenceAI-safe YADL profileREST APIAPI keys and scopesAgent APIConnect YADL with MCP
Help and troubleshooting
Develop with YADL

YADL syntax and capability reference

Versioned reference for YADL grammar constructs and their editor, validation, preview, and export behavior.

YADL syntax and capability reference

Reference version: yadl-capability-reference-v1
Grammar fingerprint: c1b57cd7a138409c162273daf5f6451072e3e6ec73cc83844ff7cb31082062e5

This is the concise contract for the current YADL language. It is generated from the checked-in Langium grammar and is checked by pnpm yadl:capabilities:check. Use it to decide which syntax is appropriate for a document; use the AI-safe profile when an integration needs the narrower certified subset.

Document skeleton

meta, imports, reusable declarations, one or more diagram or scene blocks, and an optional export video block form a document. Statements are block-oriented and use explicit names, strings, durations, coordinates, and references.

export video { fps 30 viewport (1920, 1080) format mp4 }
style card { background-color: "#0f172a"; color: "#ffffff"; }
scene intro "Welcome" {
  diagram "Welcome" type flowchart {
    Start: { text "Start" at (120, 180) size (220, 120) style card }
    Finish: { text "Finish" at (480, 180) size (220, 120) style card }
    Start -> Finish: { type smoothstep marker-end arrowclosed }
    timeline story duration 4s {
      action reveal after 0s { show Start using fadeIn for 500ms }
      stop after 1s cue "Introduce the first step" emphasis
    }
  }
}

Capability matrix

AreaPrimary syntaxValidationEditor supportPreview and exportNotes
Document metadata and importsmeta, import, export { ... } fromYesCompletion and diagnosticsResolved imports participate in preview/exportImport paths and entitlement still apply.
Reusable design systemvar, alias, style, paint, brand, layerYesCompletion and formattingYesPrefer named styles and brands for portable source.
Diagrams and scenesdiagram, scene, positions, elements, connectionsYesCompletion, source reveal, Pixi editingYesBuilt-in diagram types: architecture, sequence, class, activity, state, usecase, component, deployment, communication, package, flowchart, erd, bpmn, c4, network, orgchart, mindmap, timeline, gantt, wireframe, chart.
Reusable visualscomponent, background, group, useYesCompletion and catalog/editor workflowsYes when dependencies resolveKeep published component source separate from documents.
Media and accessibilityicon, image, video, audio, svg, aria-labelYesCommon snippets and diagnosticsSubject to browser/origin/media availabilityPreview availability does not bypass export preflight.
Chartschart, chart-group, series, data, optionsYesChart snippets and timeline supportYesSupported chart kinds are area, bar, line, pie, radar, radial, and tooltip.
Motion and timelinetimeline, action, animate, show, hide, media/camera/filter statementsYesTimeline authoring and source revealYesTimed actions affect normal preview and video export.
Presenter cues`stop after <duration> cue "..." [emphasiswarning]`YesTimeline stop lane, cue snippets, teleprompterNo
Video configurationexport video { fps ... viewport/layout ... format ... }YesExport readiness diagnosticsYesValid formats and preset/frame compatibility are enforced separately.

Canonical rules for people and agents

  • Use quoted strings for displayed text, URLs, CSS-like values, and cue text.
  • Use named declarations and references instead of duplicating styling or coordinates where possible.
  • Keep timeline delays explicit. Use after previous only when the relative relationship is intentional.
  • Validate after source changes; successful parsing alone does not guarantee a resolved dependency, an export-ready frame, or media availability.
  • Presenter cues belong only on stop after &lt;duration&gt; entries. A cue is plain text; emphasis and warning are the only supported cue intents.

Advanced and experimental surface

The following grammar-supported forms are intentionally more flexible and should be used with focused preview/export checks instead of as a default for generated source:

  • HTML-like component/background trees and free-form CSS strings.
  • Custom animation gsap { ... } property blocks.
  • Raw SVG and remote media, which remain subject to SVG safety checks, source-origin policy, and renderer compatibility.
  • Diagram-family-specific statements and chart options beyond the canonical examples.

For a dependable automated workflow, start with the Agent API reference and its certified explanatory profile. That profile is deliberately smaller than this full grammar.

YADL source language

Learn the YADL document model, source concepts, validation, and safe reusable-source workflows.

AI-safe YADL profile

Use the constrained, certified YADL subset for dependable machine-authored explanatory visuals.

On this page

YADL syntax and capability referenceDocument skeletonCapability matrixCanonical rules for people and agentsAdvanced and experimental surface