All checks were successful
Run Check Script / check (pull_request) Successful in 1m53s
46 lines
3.2 KiB
XML
46 lines
3.2 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="330" viewBox="0 0 1200 330" role="img" aria-labelledby="title desc">
|
|
<title id="title">PostgreSQL and Zitadel compose identity functionality through a typed Ref</title>
|
|
<desc id="desc">PostgreSQLScore exports PostgreSQLRootAccountRef to ZitadelScore. Together they provide identity functionality.</desc>
|
|
<defs>
|
|
<marker id="arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto">
|
|
<path d="M0 0 10 5 0 10z" fill="#0f766e"/>
|
|
</marker>
|
|
<style>
|
|
.sans { font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
|
|
.mono { font-family: "JetBrains Mono", Consolas, monospace; }
|
|
</style>
|
|
</defs>
|
|
<rect width="1200" height="330" fill="#ffffff"/>
|
|
<g class="sans">
|
|
<text x="40" y="52" fill="#0f172a" font-size="30" font-weight="750">Compose identity</text>
|
|
<text x="40" y="80" fill="#64748b" font-size="17">A consumer receives a typed contract, not the producer Score.</text>
|
|
|
|
<rect x="40" y="120" width="270" height="100" rx="12" fill="#172554"/>
|
|
<text x="65" y="150" fill="#bfdbfe" font-size="12" font-weight="750" letter-spacing="1.5">SCORE</text>
|
|
<text x="65" y="184" fill="#ffffff" font-size="21" font-weight="700" class="mono">PostgreSQLScore</text>
|
|
<text x="65" y="207" fill="#bfdbfe" font-size="14">provisions PostgreSQL</text>
|
|
|
|
<path d="M310 170H385" fill="none" stroke="#0f766e" stroke-width="2.5"/>
|
|
<rect x="385" y="143" width="290" height="54" rx="27" fill="#f0fdfa" stroke="#0f766e" stroke-width="1.5"/>
|
|
<text x="530" y="165" text-anchor="middle" fill="#0f766e" font-size="11" font-weight="750" letter-spacing="1">REF TYPE</text>
|
|
<text x="530" y="184" text-anchor="middle" fill="#115e59" font-size="14" font-weight="650" class="mono">PostgreSQLRootAccountRef</text>
|
|
<path d="M675 170H750" fill="none" stroke="#0f766e" stroke-width="2.5" marker-end="url(#arrow)"/>
|
|
|
|
<rect x="750" y="120" width="230" height="100" rx="12" fill="#172554"/>
|
|
<text x="775" y="150" fill="#bfdbfe" font-size="12" font-weight="750" letter-spacing="1.5">SCORE</text>
|
|
<text x="775" y="184" fill="#ffffff" font-size="21" font-weight="700" class="mono">ZitadelScore</text>
|
|
<text x="775" y="207" fill="#bfdbfe" font-size="14">provisions Zitadel</text>
|
|
|
|
<text x="1005" y="181" fill="#94a3b8" font-size="28" font-weight="500">=</text>
|
|
<rect x="1040" y="120" width="130" height="100" rx="12" fill="#eef2ff" stroke="#6366f1" stroke-width="1.5"/>
|
|
<text x="1105" y="158" text-anchor="middle" fill="#3730a3" font-size="12" font-weight="750" letter-spacing="1.2">IDENTITY</text>
|
|
<text x="1105" y="180" text-anchor="middle" fill="#3730a3" font-size="12" font-weight="750" letter-spacing="1.2">FUNCTIONALITY</text>
|
|
<text x="1105" y="204" text-anchor="middle" fill="#6366f1" font-size="13">composed</text>
|
|
|
|
<rect x="40" y="260" width="18" height="18" rx="4" fill="#172554"/>
|
|
<text x="70" y="275" fill="#64748b" font-size="14">Score owns behavior</text>
|
|
<rect x="238" y="259" width="54" height="20" rx="10" fill="#f0fdfa" stroke="#0f766e"/>
|
|
<text x="304" y="275" fill="#64748b" font-size="14">Ref carries typed desired state</text>
|
|
</g>
|
|
</svg>
|