Skip to content

Commit 541e50f

Browse files
allan sargeantclaude
andcommitted
Add architecture diagram, real UI screenshot, and an in-app AI disclaimer
- docs/diagrams/architecture.svg: source -> crosspoint -> output flow, embedded in both README and docs/architecture.md. - docs/screenshots/crosspoint-grid.png: a real screenshot of the router running locally against config/example.toml (not a mockup), captured via headless Chrome while verifying routing behavior. - The web UI itself now carries a small AI-assisted disclaimer footer pointing back to the README, so it's visible to anyone operating the tool directly, not just README readers. The README's disclaimer at the top was already in place from Phase 1. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent e7b381a commit 541e50f

5 files changed

Lines changed: 88 additions & 0 deletions

File tree

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,15 @@ output picks exactly one source, switchable live) connecting them — the same
1515
mental model as a broadcast video router, applied to SRT streams instead of
1616
SDI/HDMI.
1717

18+
![srt-router architecture: SRT inputs feeding crosspoint-core's per-source broadcast channels, a routing table mapping each output to one source, out to SRT outputs](docs/diagrams/architecture.svg)
19+
20+
<img src="docs/screenshots/crosspoint-grid.png" alt="The crosspoint web UI: a grid of outputs (program, preview) by sources (remote-feed, cam1, cam2), with the currently-routed cell highlighted green in each row" width="480">
21+
22+
*The web UI above is a real screenshot of the router running locally against
23+
[config/example.toml](config/example.toml), not a mockup — captured while
24+
verifying the routing/persistence/websocket behavior described in
25+
[Status](#status) below.*
26+
1827
## What it does
1928

2029
By default, routing is a **pure relay**: the crosspoint moves opaque payload

crates/web/static/index.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,14 @@
2828
td.active button:hover { background: #37835c; }
2929
#status { margin-top: 1rem; font-size: 0.8rem; color: #777; }
3030
#empty { color: #888; }
31+
#disclaimer { margin-top: 2.5rem; font-size: 0.75rem; color: #565b64; max-width: 32rem; }
3132
</style>
3233
</head>
3334
<body>
3435
<h1>SRT Router — Crosspoint</h1>
3536
<div id="grid"><p id="empty">Loading…</p></div>
3637
<div id="status"></div>
38+
<p id="disclaimer">AI-assisted project (built with Claude), reviewed by a human author. See the repo README for current verification status.</p>
3739
<script>
3840
async function fetchState() {
3941
const res = await fetch('/api/state');

docs/architecture.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Architecture
22

3+
![srt-router architecture: SRT inputs feeding crosspoint-core's per-source broadcast channels, a routing table mapping each output to one source, out to SRT outputs](diagrams/architecture.svg)
4+
35
## The core model
46

57
Three concepts, deliberately kept separate:

docs/diagrams/architecture.svg

Lines changed: 75 additions & 0 deletions
Loading
10 KB
Loading

0 commit comments

Comments
 (0)