theseus-site/whitepaper/build/figure-architecture.html
Hermes Dev 95f1ab55aa Whitepaper: rebuildable from its Markdown, with the workflow written down
The page was generated by a one-off script that no longer exists, so a text
change meant rebuilding the tooling first. build/build.mjs turns
whitepaper.md into index.html byte-for-byte as published; the page chrome and
the two diagrams are checked in beside it (the folder needs an exception from
the generic build/ ignore rule). README.md records the publishing steps for
both mirrors and the editorial decisions the text follows.
2026-11-01 18:01:58 +02:00

9 lines
3.4 KiB
HTML

<figure class="diagram"><svg viewBox="0 0 760 368" role="img" aria-label="Every client reads the chain itself; the gateway only serves bytes" font-family="system-ui,-apple-system,Segoe UI,Roboto,sans-serif" font-size="13"><defs><marker id="arch-arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path d="M0 0L10 5L0 10z" fill="#5e6678"/></marker></defs>
<text x="24" y="34" font-size="15" font-weight="600" fill="#e7eaf1">Every client reads the chain itself; the gateway only serves bytes</text>
<g fill="none" stroke="#5e6678" stroke-width="1.25"><path d="M109 120L109 176" marker-end="url(#arch-arrow)"/><path d="M283 120L283 176" marker-end="url(#arch-arrow)"/><path d="M457 120L320 176" marker-end="url(#arch-arrow)"/><path d="M631 120L320 176" marker-end="url(#arch-arrow)"/><path d="M109 120L440 176" marker-end="url(#arch-arrow)"/><path d="M283 120L440 176" marker-end="url(#arch-arrow)"/><path d="M457 120L457 176" marker-end="url(#arch-arrow)"/><path d="M631 120L631 176" marker-end="url(#arch-arrow)"/><path d="M416 204H344" marker-end="url(#arch-arrow)"/><path d="M576 232V288" marker-end="url(#arch-arrow)"/></g>
<text x="380" y="196" text-anchor="middle" font-size="11.5" fill="#8b98a9">same chain</text>
<g><rect x="24" y="64" width="170" height="56" rx="8" fill="none" stroke="#5e6678" stroke-width="1.25"/><text x="36" y="84" font-weight="600" fill="#e7eaf1">Theseus Navigator</text><text x="36" y="101" font-size="11.5" fill="#8b98a9">desktop browser</text></g><g><rect x="198" y="64" width="170" height="56" rx="8" fill="none" stroke="#5e6678" stroke-width="1.25"/><text x="210" y="84" font-weight="600" fill="#e7eaf1">Ariadne's Thread</text><text x="210" y="101" font-size="11.5" fill="#8b98a9">Windows resolver</text></g><g><rect x="372" y="64" width="170" height="56" rx="8" fill="none" stroke="#5e6678" stroke-width="1.25"/><text x="384" y="84" font-weight="600" fill="#e7eaf1">Ariadne for Android</text><text x="384" y="101" font-size="11.5" fill="#8b98a9">phone browser</text></g><g><rect x="546" y="64" width="170" height="56" rx="8" fill="none" stroke="#5e6678" stroke-width="1.25"/><text x="558" y="84" font-weight="600" fill="#e7eaf1">Sirius</text><text x="558" y="101" font-size="11.5" fill="#8b98a9">registrar and studio</text></g>
<g><rect x="24" y="176" width="320" height="56" rx="8" fill="#d6ff3d" fill-opacity=".12" stroke="#d6ff3d" stroke-width="2"/><text x="184" y="196" text-anchor="middle" font-weight="600" fill="#e7eaf1">Bitcoin Cash chain</text><text x="184" y="213" text-anchor="middle" font-size="11.5" fill="#8b98a9">read through Electrum servers, reduced locally</text></g>
<g><rect x="416" y="176" width="320" height="56" rx="8" fill="none" stroke="#5e6678" stroke-width="1.25"/><text x="576" y="196" text-anchor="middle" font-weight="600" fill="#e7eaf1">Gateway, navigate.st</text><text x="576" y="213" text-anchor="middle" font-size="11.5" fill="#8b98a9">serves Sia sites, verifies signed records</text></g>
<g><rect x="416" y="288" width="320" height="56" rx="8" fill="rgba(255,255,255,.04)" stroke="#5e6678" stroke-width="1.25"/><text x="576" y="310" text-anchor="middle" font-weight="600" fill="#e7eaf1">Sia storage</text><text x="576" y="328" text-anchor="middle" font-size="11.5" fill="#8b98a9">sites, signed records, extensions</text></g>
</svg><figcaption>Architecture: four clients, one chain, one gateway.</figcaption></figure>