Diagram MakerCLI Reference
⌨️

CLI Reference

validate · fmt · export · render · md

Referencja CLI

Właściciele datro-CLI jest głównym rozwiązaniem, .dtro-Validowanie, formatowanie, eksport i renderowanie plików z terminału lub rurociągu CI.

SH
# Install globally
npm install -g datro

# Or run without installing via npx
npx datro --version
zatwierdzeniefmtwywozićodtwarzaniemd

zatwierdzenie datro

Analizuje .dtro-Plik, który przeprowadza wszystkie cztery procesy weryfikacji i drukuje diagnozy file:line:col-Posiadłości pamięci. Zakończone 0, jeżeli nie ma błędów (powiadomienia są dopuszczalne)).

SH
# Validate and print human-readable diagnostics
datro validate arch.dtro

# Suppress info-level hints
datro validate arch.dtro --no-info

# Output machine-readable JSON (for CI pipelines, tooling)
datro validate arch.dtro --json
SH
✓ arch.dtro
  nodes=5  edges=6  groups=1  constraints=1
  errors=0  warnings=1  info=1

[W] arch.dtro:38:3 W602 Theme colour 'cache: #C0FFE8' has contrast ratio 1.82:1 ...
[I] arch.dtro:12:1 I003 No meta block found — consider adding one for documentation
Przykład (1 ostrzeżenie, 1 informacja, 0 błędy → wyjście 0)
FieldTypeRequiredDescription
--jsonflagNoWydaj dane diagnostyczne i statystyki IR jako JSON. Korzystne dla narzędzi CI i integracji edytorów.
--no-infoflagNoUtrzymać diagnozę na poziomie informacji I××× z wydania.

datro fmt

Drukuje lub pisze kanoniczną formę .dtro-Przesłanie. Formater jest deterministyczny: ten sam IR zawsze wytwarza tę samą wydajność, więc diffi pokazują tylko prawdziwe zmiany.

SH
# Print canonical form to stdout (no file changes)
datro fmt arch.dtro

# Overwrite file with canonical form
datro fmt --write arch.dtro

# CI check — exits non-zero if file is not already canonical
datro fmt --check arch.dtro
FieldTypeRequiredDescription
--writeflagNoWypisz ten plik bezpośrednio w formie kanonicznej.
--checkflagNoWyjście nierówne do zera, jeśli plik nie jest już kanoniczny używać w pre-commit hooks lub CI.
💡

Wykonanie wstępnego zobowiązania

Dodaj datro fmt --check arch.dtro Dodać do kręgu przed zobowiązaniem, aby forma kanoniczna była zawsze określona. Zapobiega to dźwiękom formatowania podczas sprawdzania kodu.

Eksport datrowy

Konwersja w zweryfikowane .dtro-Plik w inny format czytelny maszynowo. Wyciśnij standardowo na stdout; użyj --out, Żeby napisać do pliku.

SH
# Export to Graphviz DOT (pipe into dot for rendering)
datro export arch.dtro --to dot

# Export to Cytoscape.js JSON
datro export arch.dtro --to cytoscape --out arch.cytoscape.json

# Export the lossless JSON IR (full metadata preserved)
datro export arch.dtro --to json --out arch.ir.json
FieldTypeRequiredDescription
--tostring
"dot""cytoscape""json"
YesFormat docelowy.
--outpathNoWpisz wydawnictwo do tej ścieżki plików zamiast stdout.
  • `dot` – Graphviz DOT-Sprache. Przeprowadzenie dot -Tsvg w przypadku użytkownika, który nie jest użytkownikiem,.
  • `cytoscape` – Cytoscape.js JSON. Importacja bezpośrednia do każdej instancji cytoskapowej dla interaktywnych wykresów internetowych.
  • `json` – Bezpłatny JSON IR (pełny) DatroIR-Przedmiot). Wykorzystaj je w każdej codziennej analizie informatycznej, w każdym skrypcie lub renderingu.

Rendering datro

Przekazuj .dtro-Plik graphviz w pikselnie dokładnym SVG lub PNG. Wymaganie instalacji dot-Biner z graphviz i na $PATH.

SH
# Render to SVG (requires Graphviz installed)
datro render arch.dtro --out diagram.svg

# Render to PNG
datro render arch.dtro --out diagram.png
FieldTypeRequiredDescription
--outpathYesŚcieżka pliku wyjściowego. Rozszerzenie określa format: .svg lub .png.
ℹ️

Grafviz wymagany

Zainstalować graphviz z [graphviz.org/pobierz]](https://graphviz.org/pobierz/) i upewnić się, że dot w sprawie $PATH znajduje się. CLI zakończy się wyraźnym błędem, jeśli nie zostanie odnaleziona.

datro md

Przetwarzanie bloków kodu datro-fenesowanych wbudowanych do plików markdown. Dwa dowództwa: check (wyłącznie weryfikacja, bez potrzeby wiz graficznej) oraz render (Validacja + wydanie SVG/PNG).

SH
# Validate all Datro blocks embedded in a Markdown file
datro md check docs/architecture.md

# Validate and output JSON (CI-friendly)
datro md check docs/architecture.md --json

# Render all blocks to SVG files next to the Markdown file
datro md render docs/architecture.md

# Render to a specific output directory in PNG format
datro md render docs/architecture.md --out-dir public/diagrams --format png

# Continue even when some blocks have errors
datro md render docs/architecture.md --no-fail

Wbudowany format bloków

Znajdź blok zabezpieczony rozpoznawcą języka datro. Blok musi zawierać magiczny nagłówek.:

Markdown
<!-- docs/architecture.md -->

# System Overview

```datro
#!DATRO 1.0

node api { type: gateway label: "API Gateway" }
node svc { type: service label: "Auth Service" }

edge api -> svc { kind: http }
```

Run `datro md render docs/architecture.md` to generate
`docs/architecture-block-1.svg` alongside this file.
Datro blok wbudowany w plik markdown
FieldTypeRequiredDescription
--out-dirpathNomd render – Składnik dla plików wydawniczych. Standardowo ten sam katalog jak wpis markdown.
--formatstring
"svg""png"
Nomd render – Format wydania.
--jsonflagNomd check – Wydaj wyniki jako JSON zamiast czytelnego tekstu.
--no-failflagNoWykorzystaj pozostałe bloky, nawet jeśli są błędne. Zakończone 0.

Integracja CI

Dodaj te kroki do każdego rurociągu CI, aby zmusić jakość wykresu w każdym wyciągnięciu zapytania:

.github/workflows/ci.yml
# .github/workflows/ci.yml (excerpt)
- name: Validate Datro diagrams
  run: |
    npx datro fmt --check docs/arch.dtro
    npx datro validate docs/arch.dtro --no-info
    npx datro md check docs/architecture.md --json
  • fmt --check – błędne, jeżeli wykres nie jest formatowany kanonicznie.
  • validate --no-info – nie występuje w każdej diagnozie ciężkości błędu.
  • md check --json – potwierdza wszystkie wbudowane wykresy; wydajność JSON może być zintegrowana z narzędziami notarialnymi.

Następne kroki

  • Przeczytaj Language Reference .dtro-Syntaksa.
  • Dowiedz się, jak to zrobić z wtyczką Remark lub Markdown-it.
Otwórz twórcę diagramów

Uważaj na przeglądarkę? Uważaj i oddaj bez instalacji.

Schema v1 · Updated September 2026