Quick Start
Build your first diagram in six steps
Raskstart
Du kan lage din første validerte arkitektoniske diagram i seks trinn. Hvert trinn introduserer et nytt datro-konsept. Til slutt har du et komplett, designet og begrenset sjekket diagram som du kan eksportere som SVG.
Følg instruksjonene i live-redigeringen: Legg inn hvert stykke og klikk på Validere“.
Trinn 1 Skriv ned dine første knopper og kanter
Alle .dtro-Fil begynner med en magisk overskrift. Deretter skal du erklære knutter og kanter.). Legg dette inn i redigereren:
#!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 }Magisk overskrifter
Linen #!DATRO 1.0 i linje 1 er obligatorisk. Parseren returnerer E100 hvis den mangler.
Trinn 2 Legg til `attrs` for mer omfattende metadata
Blokken attrs inneholder hvilken som helst nøkkelverdi-metadata. Valuer kan være tegneserier, tall, boolean verdier eller arrays. De felles egenskapene er tech, owner, deprecated og sla.
node backend {
type: service
label: "NestJS API"
attrs {
tech: "nestjs"
owner: "platform-team"
}
}Attributter videreføres til JSON IR og vises som verktøytips i SVG nyttig for standby- og SLA-metadata.
Trinn 3 Legg til med Edge-metadata
Edder har en type (semantisk forholdstype), en optioneel etikett, en vekt (relativ data trafikk) og en asynkrone flagg. Asynkrone edder er representert som strakke linjer.
edge backend -> stripe {
kind: http
label: "charge API"
async: false
}| Field | Type | Required | Default | Description |
|---|---|---|---|---|
kind | EdgeKind "http""grpc""query""publish""subscribe""read""write""deploys""monitors""depends""…21 total" | Yes | unknown | Semantisk type forhold |
label | string | No | — | Kort tekst som vises på marginallinjen |
weight | number | No | 1.0 | Relativt trafikkvekt tyngre kanter blir tykkere |
async | boolean | No | false | Hvis true, er kanten strøket (flue-and-forget mønster)). |
Trinn 4 Grupper knoppe i grupper
Bruk en group-blokke for å gruppere relaterte knopper. Gruppen vises i SVG som markerte underdiagramfelter. En knute kan bare tilhøre en gruppe.
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" }Grupper vs node.group
De kan også tildele en gruppe direkte ved knoten med group: data_tier. Begge stiler er gyldige; listen members av blokken group har forrang.
Trinn 5 Legg til en arkitektonisk begrensning
Begrensninger er maskinkontrollerte arkitektoniske regler. Validatoren vurderer dem på basis av IR og gir E501-Felet tilbake når en regel blir brutt.
constraint {
id: "no-db-external"
rule: "database !-> external"
message: "Databases must not connect to external services"
severity: error
}Regel database!-> external betyr: Ingen node av typen database må ha en rettesatt kant til noen node av typen external. Dette blokkerer tilfeldige direkte DB → API-avtaler fra tredjeparter.
Trinn 6 Legg til et tema
Kontroller redegjørelsen av diagrammet med en layout-Block og definere en fargepalette med en theme-Blokk. Tilgjengelighetsprøven løser W602 ut når en farge faller under WCAG AA-kontrast.
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 }
}WCAG-kontrastet skjer automatisk
DOT-eksportøren velger automatisk en svart eller hvit skriftfarge for hver knutefylling ved å bruke WCAG 2.1's relative lysformel ingen konfigurasjon nødvendig.
Neste skritt
- Les Language Reference for full syntax av hver blokketype.
- Bruk CLI Reference for å validere, formatere og eksportere via kommandoene.
- Lær hvordan du lager dokumenter med Remark- eller Markdown-it-plugin embed diagrammer i Markdown.
Din diagram er klar til å gjenspeile Klikk i redigeringssymbolen på gjenspeile → SVG.