Opening the shared document…
Write your own diagram
C4, sequence, flowchart, use case, ER or dictionary — .alab, arch-lab JSON, or Mermaid, auto-detected and rendered live. C4 nodes can be dragged on the canvas, and sequence messages and lifelines added, edited, repointed, reordered, numbered and removed on it; the other kinds lay themselves out from the text. Nothing leaves your browser. Syntax reference
How .alab, JSON and Mermaid relate
.alab is the format to write: it is what the syntax reference documents, what share links carry, and what reads cleanly in a code review. .archlab.json is the same C4 model on disk — the interchange form any other tool can read without implementing a grammar; the two are lossless twins in both directions (proved on every build), so you never have to write the JSON by hand. Mermaid is read and written too, lossily — the format toggle above the pane converts in place and states what each direction drops. Nothing you type is uploaded or stored.
Tab indents · Esc then Tab leaves the editor · syntax reference
Export
Click a message, participant, or fragment chip to focus it · a • after a label means that message carries details · ← → move between messages · Ctrl + scroll or pinch to zoom · Esc clears focus · − on a card folds away the services only it uses
- Account holder to Web App (sync): Requests a reset
- Web App to Auth Service (sync): Ask for a reset link [HTTPS]
- Auth Service to Token Store (sync): SET token, ttl 15m [RESP]
- Auth Service to Email Provider (async): Send reset link [SMTP]
- Auth Service to Web App (reply): 202 Accepted
- Account holder to Web App (sync): Opens the emailed link
- Web App to Auth Service (sync): POST /reset-confirmations [HTTPS]
- Auth Service to Token Store (sync): GETDEL token [RESP]
- Auth Service to Auth Service (sync, self-message): Hashes the new password
- Auth Service to Token Store (async): Revoke every session
- Auth Service to Web App (reply): 200 OK
- Web App to Account holder (sync): Signed in with the new password
- Auth Service to Web App (reply): 410 Gone
- Web App to Account holder (sync): Asks for a fresh reset