Diagram Makerâ€șQuick Start
⚡

Quick Start

Build your first diagram in six steps

Schnellstart

Erstellen Sie in sechs Schritten Ihr erstes validiertes Architekturdiagramm. Jeder Schritt fĂŒhrt ein neues Datro-Konzept ein. Am Ende verfĂŒgen Sie ĂŒber ein vollstĂ€ndiges, gestaltetes und auf EinschrĂ€nkungen ĂŒberprĂŒftes Diagramm, das Sie als SVG exportieren können.

Öffnen Sie den Diagrammersteller

Folgen Sie den Anweisungen im Live-Editor: FĂŒgen Sie jedes Snippet ein und klicken Sie auf „Validieren“.

Schritt 1 – Schreiben Sie Ihre ersten Knoten und Kanten

Jede .dtro-Datei beginnt mit einem magischen Header. Danach deklarieren Sie Knoten (EntitĂ€ten) und Kanten (Beziehungen). FĂŒgen Sie dies in den Editor ein:

arch.dtro
#!DATRO 1.0

node frontend { type: web      label: "React App" }
node backend  { type: service  label: "NestJS API" }
node db       { type: database label: "PostgreSQL" }

edge frontend -> backend { kind: http }
edge backend  -> db      { kind: query }
â„č

Magic-Header erforderlich

Die Zeile #!DATRO 1.0 in Zeile 1 ist obligatorisch. Der Parser gibt E100 zurĂŒck, wenn es fehlt.

Schritt 2 – FĂŒgen Sie `attrs` hinzu, um umfangreichere Metadaten zu erhalten

Der Block attrs enthĂ€lt beliebige SchlĂŒsselwert-Metadaten. Werte können Zeichenfolgen, Zahlen, boolesche Werte oder Arrays sein. Gemeinsame Attribute sind tech, owner, deprecated und sla.

DATRO
node backend {
  type:  service
  label: "NestJS API"
  attrs {
    tech:  "nestjs"
    owner: "platform-team"
  }
}

Attribute werden an die JSON IR weitergeleitet und als Tooltips im gerenderten SVG angezeigt – nĂŒtzlich fĂŒr Bereitschafts- und SLA-Metadaten.

Schritt 3 – Edge-Metadaten hinzufĂŒgen

Kanten haben eine Art (semantischer Beziehungstyp), ein optionales Label, ein Gewicht (relativer Datenverkehr) und ein asynchrones Flag. Asynchrone Kanten werden als gestrichelte Linien dargestellt.

DATRO
edge backend -> stripe {
  kind:  http
  label: "charge API"
  async: false
}
FieldTypeRequiredDescription
kindEdgeKind
"http""grpc""query""publish""subscribe""read""write""deploys""monitors""depends""
21 total"
YesSemantischer Beziehungstyp
labelstringNoKurzer Text, der auf der Randlinie angezeigt wird
weightnumberNoRelatives Verkehrsgewicht – schwerere Kanten werden dicker
asyncbooleanNoWenn „true“, wird die Kante gestrichelt dargestellt (Feuer-und-Vergessen-Muster).

Schritt 4 – Gruppieren Sie Knoten in Cluster

Verwenden Sie einen Gruppen-Block, um verwandte Knoten zu gruppieren. Gruppen werden im SVG als beschriftete Unterdiagrammfelder dargestellt. Ein Knoten kann nur einer Gruppe angehören.

DATRO
group data_tier {
  label:   "Data Layer"
  members: [db, redis_cache]
}

node redis_cache { type: cache label: "Redis" }

edge backend -> redis_cache { kind: read  label: "session" }
💡

Gruppen vs. node.group

Sie können mit group: data_tier auch direkt am Knoten eine Gruppe zuweisen. Beide Stile sind gĂŒltig; Die Liste members des Blocks group hat Vorrang.

Schritt 5 – FĂŒgen Sie eine architektonische EinschrĂ€nkung hinzu

EinschrĂ€nkungen sind maschinell ĂŒberprĂŒfte Architekturregeln. Der Validator wertet sie anhand der IR aus und gibt E501-Fehler zurĂŒck, wenn eine Regel verletzt wird.

DATRO
constraint {
  id:       "no-db-external"
  rule:     "database !-> external"
  message:  "Databases must not connect to external services"
  severity: error
}

Die Regel database !-> external bedeutet: Kein Knoten vom Typ database darf eine gerichtete Kante zu irgendeinem Knoten vom Typ external haben. Dies blockiert versehentliche direkte DB → API-Aufrufe von Drittanbietern.

Schritt 6 – FĂŒgen Sie Layouthinweise und ein Thema hinzu

Steuern Sie die Anordnung des Diagramms mit einem layout-Block und definieren Sie eine Farbpalette mit einem theme-Block. Die BarrierefreiheitsprĂŒfung löst W602 aus, wenn eine Farbe unter den WCAG AA-Kontrast fĂ€llt.

DATRO
layout { direction: LR  algo: dagre  node_sep: 60  rank_sep: 120 }

theme {
  palette {
    service:    "#D0E8FF"
    database:   "#FFE8C0"
    web:        "#E8D0FF"
    cache:      "#C0FFE8"
    background: "#FFFFFF"
  }
  accessibility { min_contrast: AA }
}
💡

Der WCAG-Kontrast erfolgt automatisch

Der DOT-Exporter wĂ€hlt automatisch eine schwarze oder weiße Schriftfarbe fĂŒr jede KnotenfĂŒllung aus, indem er die relative Luminanzformel von WCAG 2.1 verwendet – keine Konfiguration erforderlich.

NĂ€chste Schritte

  • Lesen Sie Language Reference fĂŒr die vollstĂ€ndige Syntax jedes Blocktyps.
  • Verwenden Sie CLI Reference zum Validieren, Formatieren und Exportieren ĂŒber die Befehlszeile.
  • Erfahren Sie, wie Sie Dokumente mit dem Remark- oder Markdown-it-Plugin embed diagrams in Markdown erstellen.
Öffnen Sie den Diagrammersteller

Ihr Diagramm ist zum Rendern bereit – klicken Sie in der Editor-Symbolleiste auf Rendern → SVG.

Schema v1 · Updated September 2026