Shapes

Shapes provide visual differentiation for different component types.

Syntax

id:Label|shape

Available Shapes

TDL supports 12 shapes:

rect (default)

Standard rectangle. Used for services, APIs, generic components.

api:API Gateway|rect
api:API Gateway        # rect is default

cyl (cylinder)

Database/storage shape. Used for databases, caches, data stores.

db:PostgreSQL|cyl
redis:Redis Cache|cyl
s3:S3 Bucket|cyl

cloud

Cloud shape. Used for external services, cloud providers, user-facing apps.

diamond

Decision/routing shape. Used for load balancers, routers, decision points.

oval

Rounded shape. Used for processes, actors, soft boundaries.

hex (hexagon)

Hexagonal shape. Used for services in hexagonal architecture, adapters.

doc (document)

Document shape. Used for files, configs, documentation.

grp (group)

Visual grouping. Used to represent logical boundaries.

terminator

Rounded rectangle. Used for start/end points in flows.

data

Parallelogram. Used for data input/output.

subproc (subprocess)

Rectangle with double sides. Used for subprocess or external process.

manual

Trapezoid. Used for manual operations.

Shape Selection Guide

Component Type
Recommended Shape

API / Service

rect (default)

Database

cyl

Cache

cyl

Queue

cyl

External Service

cloud

User / Actor

oval or cloud

Load Balancer

diamond

Config File

doc

Logical Group

grp

Start/End

terminator

Examples

Microservices

Rendered diagram

Data Pipeline

Rendered diagram

Next Steps

Last updated