Diagram MakerQuick Start

Quick Start

Build your first diagram in six steps

Démarrage rapide

Construisez votre premier diagramme d'architecture validé en six étapes. Chaque étape introduit un nouveau concept Datro. À la fin, vous aurez un diagramme complet, stylisé et vérifié par les contraintes, prêt à être exporté au format SVG.

Ouvrir le créateur de diagrammes

Suivez-nous dans l'éditeur en direct : collez chaque extrait et cliquez sur Valider.

Étape 1 — Écrivez vos premiers nœuds et arêtes

Chaque fichier .dtro commence par un en-tête magique. Après cela, déclarez les nœuds (entités) et les bords (relations). Collez ceci dans l'éditeur :

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 }
ℹ️

En-tête magique requis

La ligne #!DATRO 1.0 sur la ligne 1 est obligatoire. L'analyseur renvoie E100 s'il est manquant.

Étape 2 — Ajoutez `attrs` pour des métadonnées plus riches

Le bloc attrs contient des métadonnées clé-valeur arbitraires. Les valeurs peuvent être des chaînes, des nombres, des booléens ou des tableaux. Les attributs communs sont tech, owner, deprecated et sla.

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

Les attributs sont transmis au JSON IR et apparaissent sous forme d'info-bulles dans le SVG rendu, ce qui est utile pour les métadonnées d'astreinte et SLA.

Étape 3 — Ajouter des métadonnées Edge

Les bords ont un kind (type de relation sémantique), un label facultatif, un weight (trafic relatif) et un indicateur async. Les bords asynchrones s'affichent sous forme de lignes pointillées.

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"
YesType de relation sémantique
labelstringNoTexte court affiché sur la ligne de bord
weightnumberNoPoids du trafic relatif — les bords plus lourds rendent plus épais
asyncbooleanNoLorsque c'est vrai, le bord s'affiche en pointillés (motif « feu et oubli »)

Étape 4 — Regroupez les nœuds en clusters

Utilisez un bloc group pour regrouper les nœuds associés. Les groupes s'affichent sous forme de zones de sous-graphiques étiquetées dans le SVG. Un nœud ne peut appartenir qu’à un seul groupe.

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" }
💡

Groupes vs node.group

Vous pouvez également attribuer un groupe directement sur le nœud avec group: data_tier. Les deux styles sont valables ; la liste members du bloc group est prioritaire.

Étape 5 — Ajouter une contrainte architecturale

Les contraintes sont des règles architecturales vérifiées automatiquement. Le validateur les évalue par rapport à l'IR et renvoie des erreurs E501 lorsqu'une règle est violée.

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

La règle database !-> external signifie : aucun nœud de type database ne peut avoir un bord dirigé vers un nœud de type external. Cela bloque les appels directs accidentels à la base de données → à l'API tierce.

Étape 6 — Ajoutez des astuces de mise en page et un thème

Contrôlez la façon dont le diagramme est organisé avec un bloc layout et définissez une palette de couleurs avec un bloc theme. Le contrôle d'accessibilité déclenche W602 si une couleur tombe en dessous du contraste WCAG AA.

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 }
}
💡

Le contraste WCAG est automatique

L'exportateur DOT sélectionne automatiquement la couleur de police noire ou blanche pour chaque remplissage de nœud à l'aide de la formule de luminance relative WCAG 2.1 — aucune configuration n'est nécessaire.

Prochaines étapes

Ouvrir le créateur de diagrammes

Votre diagramme est prêt à être rendu — cliquez sur Rendu → SVG dans la barre d'outils de l'éditeur.

Schema v1 · Updated September 2026