Connections

Edges show how components communicate and depend on each other.

Edge Operators

TDL has 5 edge operators:

Operator
Name
Style
Use Case

->

Solid arrow

───▶

Synchronous calls

-->

Dashed arrow

- - ▶

Async calls, responses

..

Dotted line

······

Weak dependencies

<->

Bidirectional solid

◀───▶

Two-way sync

<-->

Bidirectional dashed

◀- - ▶

Two-way async

Basic Usage

@arch
[nodes]
  a:Service A
  b:Service B
  c:Service C
  d:Service D
  e:Service E

[edges]
  a->b:sync call
  b-->c:async
  c..d:optional
  d<->e:bidirectional
Rendered diagram

Edge Labels

Add context with labels after a colon:

Multi-word Labels

Labels can have spaces:

Special Characters

Use quotes for special characters:

Edge Styling

Colors

Width

Dash Pattern

Combined Styling

Named Styles

For consistent styling across edges, use named styles:

Rendered diagram

Common Patterns

Request/Response

Event-Driven

Error Flow

Async with Callback

Example: Full System

Rendered diagram

Next Steps

  • Groups - Organize related components

  • Styling - Advanced styling options

Last updated