training/dashboard(stack): lead with 'live, not staged'; trim prose
Audience takeaway is supposed to be that everything they're seeing is genuine live data from the devices. The library list moves to a single supporting paragraph instead of dominating the slide.
This commit is contained in:
parent
e682562c6e
commit
9373e8c057
1 changed files with 12 additions and 17 deletions
|
|
@ -34,7 +34,7 @@
|
|||
<!-- 2. stack — Python stack & libraries used in the project -->
|
||||
<div class="stage-view" data-view="stack">
|
||||
<div class="metric-stack metric-stack-wide">
|
||||
<div class="metric-eyebrow">the stack · stdlib-first, four runtime deps, every choice annotated</div>
|
||||
<div class="metric-eyebrow">the stack behind the live data on the right</div>
|
||||
<div class="code-grid">
|
||||
<div class="code-card">
|
||||
<div class="code-card-header">pyproject.toml</div>
|
||||
|
|
@ -188,22 +188,17 @@
|
|||
|
||||
<section class="scene" data-stage="stack">
|
||||
<div class="prose">
|
||||
<h2>The stack</h2>
|
||||
<p>Four runtime dependencies. <strong>Starlette</strong> +
|
||||
<strong>uvicorn</strong> give us the async HTTP / WebSocket
|
||||
surface; <strong>msgpack</strong> talks to Metasploit's RPC over
|
||||
TLS for the Tier-3 exploit driver; <strong>pycdlib</strong> mints
|
||||
NoCloud cidata ISOs in pure Python so we don't shell out to
|
||||
<code>genisoimage</code>.</p>
|
||||
<p>Everything else is the standard library — <code>asyncio</code>,
|
||||
<code>pathlib</code>, <code>json</code>, <code>logging</code>,
|
||||
<code>secrets</code>. Every module opens with <code>from
|
||||
__future__ import annotations</code> and types its function
|
||||
signatures, so ten months from now the docstring tells you what
|
||||
it does and the signature tells you what it eats.</p>
|
||||
<p>Every dep in <code>pyproject.toml</code> carries a one-line
|
||||
comment explaining why it's there. If a future maintainer can't
|
||||
justify a dep in ten words, it doesn't go in.</p>
|
||||
<h2>Live, not staged</h2>
|
||||
<p>Every panel from here on is real data from real devices —
|
||||
counters, bars, the episode database, all driven by the
|
||||
<code>cis490-receiver</code> service running on this Pi as
|
||||
you scroll.</p>
|
||||
<p>The code on the left is how it gets here. Four runtime deps:
|
||||
<strong>starlette</strong> + <strong>uvicorn</strong> for the
|
||||
async HTTP and WebSocket surface, <strong>msgpack</strong>
|
||||
talks to Metasploit's RPC, <strong>pycdlib</strong> builds the
|
||||
lab-VM cidata ISOs. Everything else is the standard library,
|
||||
and every dep is annotated with a one-line reason it's there.</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue