chore: add static SVG diagram and embed in SCHEMA.md
This commit is contained in:
@@ -1,55 +1,5 @@
|
||||
# LUCEE — схема взаимодействия с Postgres
|
||||
|
||||
Ниже mermaid-диаграмма «чип» с входными и выходными ножками.
|
||||
Ниже статическая SVG-версия схемы (надёжно рендерится в VSCode):
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
subgraph Inputs
|
||||
I1[param_a]
|
||||
I2[param_b]
|
||||
I3[param_c]
|
||||
I4[param_d]
|
||||
I5[param_e]
|
||||
I6[param_f]
|
||||
I7[param_g]
|
||||
I8[param_h]
|
||||
end
|
||||
|
||||
PG["Postgres\n(БД)"]
|
||||
|
||||
subgraph Outputs
|
||||
O1[result_x]
|
||||
O2[result_y]
|
||||
O3[report_z]
|
||||
O4[metric_m]
|
||||
O5[event_e]
|
||||
O6[export_csv]
|
||||
O7[audit_log]
|
||||
O8[notification]
|
||||
end
|
||||
|
||||
LUCEE["Lucee\n(шаблоны / app)"]
|
||||
|
||||
I1 --> PG
|
||||
I2 --> PG
|
||||
I3 --> PG
|
||||
I4 --> PG
|
||||
I5 --> PG
|
||||
I6 --> PG
|
||||
I7 --> PG
|
||||
I8 --> PG
|
||||
|
||||
PG --> O1
|
||||
PG --> O2
|
||||
PG --> O3
|
||||
PG --> O4
|
||||
PG --> O5
|
||||
PG --> O6
|
||||
PG --> O7
|
||||
PG --> O8
|
||||
|
||||
O2 --> LUCEE
|
||||
O3 --> LUCEE
|
||||
O6 --> LUCEE
|
||||
O8 --> LUCEE
|
||||
```
|
||||

|
||||
|
||||
@@ -0,0 +1,104 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1000" height="420" viewBox="0 0 1000 420" role="img" aria-label="LUCEE схема">
|
||||
<defs>
|
||||
<marker id="arrow" markerWidth="10" markerHeight="7" refX="10" refY="3.5" orient="auto">
|
||||
<path d="M0,0 L10,3.5 L0,7 Z" fill="#333"/>
|
||||
</marker>
|
||||
</defs>
|
||||
<style>
|
||||
.node { fill:#fff; stroke:#333; stroke-width:1.4; }
|
||||
.chip { fill:#f8f9fa; stroke:#333; stroke-width:2; }
|
||||
.app { fill:#eef6ff; stroke:#1f78b4; stroke-width:1.5; }
|
||||
.label { font-family: Arial, Helvetica, sans-serif; font-size:13px; fill:#111; text-anchor:middle; dominant-baseline:middle; }
|
||||
.small { font-family: Arial, Helvetica, sans-serif; font-size:12px; fill:#111; }
|
||||
.line { stroke:#555; stroke-width:1.2; fill:none; marker-end:url(#arrow); }
|
||||
</style>
|
||||
|
||||
<!-- Inputs -->
|
||||
<g id="inputs">
|
||||
<circle cx="140" cy="120" r="8" class="node"/>
|
||||
<text x="170" y="124" class="small">param_a</text>
|
||||
|
||||
<circle cx="140" cy="154" r="8" class="node"/>
|
||||
<text x="170" y="158" class="small">param_b</text>
|
||||
|
||||
<circle cx="140" cy="188" r="8" class="node"/>
|
||||
<text x="170" y="192" class="small">param_c</text>
|
||||
|
||||
<circle cx="140" cy="222" r="8" class="node"/>
|
||||
<text x="170" y="226" class="small">param_d</text>
|
||||
|
||||
<circle cx="140" cy="256" r="8" class="node"/>
|
||||
<text x="170" y="260" class="small">param_e</text>
|
||||
|
||||
<circle cx="140" cy="290" r="8" class="node"/>
|
||||
<text x="170" y="294" class="small">param_f</text>
|
||||
|
||||
<circle cx="140" cy="324" r="8" class="node"/>
|
||||
<text x="170" y="328" class="small">param_g</text>
|
||||
|
||||
<circle cx="140" cy="358" r="8" class="node"/>
|
||||
<text x="170" y="362" class="small">param_h</text>
|
||||
</g>
|
||||
|
||||
<!-- Central Postgres chip -->
|
||||
<rect x="370" y="170" width="260" height="120" rx="10" class="chip"/>
|
||||
<text x="500" y="230" class="label">Postgres (БД)</text>
|
||||
|
||||
<!-- Outputs -->
|
||||
<g id="outputs">
|
||||
<circle cx="860" cy="120" r="8" class="node"/>
|
||||
<text x="880" y="124" class="small">result_x</text>
|
||||
|
||||
<circle cx="860" cy="154" r="8" class="node"/>
|
||||
<text x="880" y="158" class="small">result_y</text>
|
||||
|
||||
<circle cx="860" cy="188" r="8" class="node"/>
|
||||
<text x="880" y="192" class="small">report_z</text>
|
||||
|
||||
<circle cx="860" cy="222" r="8" class="node"/>
|
||||
<text x="880" y="226" class="small">metric_m</text>
|
||||
|
||||
<circle cx="860" cy="256" r="8" class="node"/>
|
||||
<text x="880" y="260" class="small">event_e</text>
|
||||
|
||||
<circle cx="860" cy="290" r="8" class="node"/>
|
||||
<text x="880" y="294" class="small">export_csv</text>
|
||||
|
||||
<circle cx="860" cy="324" r="8" class="node"/>
|
||||
<text x="880" y="328" class="small">audit_log</text>
|
||||
|
||||
<circle cx="860" cy="358" r="8" class="node"/>
|
||||
<text x="880" y="362" class="small">notification</text>
|
||||
</g>
|
||||
|
||||
<!-- Lucee box -->
|
||||
<rect x="700" y="280" width="180" height="90" rx="10" class="app"/>
|
||||
<text x="790" y="325" class="label">Lucee (шаблоны / app)</text>
|
||||
|
||||
<!-- Connections: inputs -> Postgres -->
|
||||
<path d="M140 120 C 260 120 250 170 370 170" class="line"/>
|
||||
<path d="M140 154 C 260 154 250 170 370 170" class="line"/>
|
||||
<path d="M140 188 C 260 188 250 188 370 188" class="line"/>
|
||||
<path d="M140 222 C 260 222 250 210 370 210" class="line"/>
|
||||
<path d="M140 256 C 260 256 250 240 370 240" class="line"/>
|
||||
<path d="M140 290 C 260 290 250 270 370 270" class="line"/>
|
||||
<path d="M140 324 C 260 324 250 300 370 300" class="line"/>
|
||||
<path d="M140 358 C 260 358 250 300 370 300" class="line"/>
|
||||
|
||||
<!-- Connections: Postgres -> outputs -->
|
||||
<path d="M630 170 C 730 170 760 120 860 120" class="line"/>
|
||||
<path d="M630 170 C 730 170 760 150 860 154" class="line"/>
|
||||
<path d="M630 188 C 730 188 760 180 860 188" class="line"/>
|
||||
<path d="M630 210 C 730 210 760 210 860 222" class="line"/>
|
||||
<path d="M630 240 C 730 240 760 240 860 256" class="line"/>
|
||||
<path d="M630 270 C 730 270 760 270 860 290" class="line"/>
|
||||
<path d="M630 300 C 730 300 760 310 860 324" class="line"/>
|
||||
<path d="M630 300 C 730 300 760 330 860 358" class="line"/>
|
||||
|
||||
<!-- Some outputs -> Lucee -->
|
||||
<path d="M860 154 C 820 154 760 240 700 325" class="line"/>
|
||||
<path d="M860 188 C 820 188 760 260 700 325" class="line"/>
|
||||
<path d="M860 290 C 820 290 760 310 700 325" class="line"/>
|
||||
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.2 KiB |
Reference in New Issue
Block a user