Ethan McNamara

Colophon

What this site is made of, what it weighs, and which of its claims were measured rather than asserted. Every number below was computed at build time; the page refuses to display a figure that was typed by hand.

This build

Built7 September 2026
Revision1ffc126
Pages34
HTML, all pages1.75 MB
Assets, all types4.79 MB
Search entries33
Build time93 ms

By file type

TypeBytes
.svg2.44 MB
.js1.16 MB
.css577 kB
.webp417 kB
.woff2187 kB
.mjs22 kB
.txt9 kB
.png4 kB

Diagrams account for most of the SVG figure: fourteen architecture maps, pre-rendered in both themes, loaded only on the case page that needs one.

How it is built

Stack

No framework and no runtime dependencies. Static HTML, CSS and JavaScript, rendered by a Node script using only the standard library. The page you are reading loaded no third-party script, no analytics, no font CDN and no tracker. A build check fails if any request to an external origin appears anywhere in the output.

Geist, self-hosted. Geist for the interface and Geist Mono for anything a machine produced — including every number on this page. Caveat appears only in the margin notes on the home page, where a hand is annotating the work rather than the interface speaking. All three are subset and served from this domain under the SIL Open Font Licence.

Light by default, dark by choice. The theme is applied before first paint by a small inline script, so there is no flash either way. Your choice is remembered on this device only; on a first visit your operating system's preference decides. Both themes are checked for contrast on every build.

What is reused, and unchanged

The films, working models and architecture diagrams are the originals from the Signal Studio engineering archive, vendored byte for byte. A build check compares every one against its source; if a single byte differs, the build fails.

AssetCountTreatment
Product films7Vendored unchanged
Working models14Vendored unchanged
Architecture diagrams28Pre-rendered, split per project and theme
Exploration views180Lifted from the review artifact, re-scoped only
Design tokens1Byte-identical to the design-system repository

Checks

Last run Mon, 07 Sep 2026 08:07:40 GMT against revision 0808f9a.

CheckResultDetail
G1 build Pass 35 pages, 33 routes
G2 vendor identity Pass 13 files byte-identical to source
G3 no dependencies Pass 66 files, no external origins
G4 html Pass 35 pages checked
G5 links Pass internal links and anchors resolve
G6 budgets Pass largest page 127kB · css 18kB gz · js 8kB gz · fonts 187kB
G7 css rules Pass 12 site stylesheets
G8 contrast Pass WCAG AA on 14 routes, both themes
G9 accessibility Pass names, targets, slider and dialog semantics
G12 layout Pass no horizontal overflow
G20 console Pass no errors or warnings
G10 keyboard Pass focus, palette, lens keys
G11 reduced motion Pass nothing moves; films show stills
G14 theme Pass default, toggle, persistence, no flash
G13 vitals Pass mobile, CPU 4x: CLS max 0.0022 · LCP max 1348ms across 6 routes
G17 explorations Pass 180 of 180 views mount and paint
G18 receipt truth Pass every figure on the colophon is computed
G21 panel regressions Pass 28 round-1 defect classes held

What here is illustrative

Be clear about this

Every demonstration uses synthetic data. The films, the working models and the 180 exploration views all show invented projects, invented people and invented numbers. Nothing uploads a file, sends a message, grants a permission or writes to a database.

The fourteen investigations are at different maturities, stated on each page. Most are concepts. One is in development. None of them makes an adoption, performance or production-readiness claim.

The review scores are internal. 2 engagements with 16 rounds between them, judged by model seats against a rubric I wrote, on a gate I set. They measure one build against the previous build and nothing else. The review page says so in more detail, including the record whose numbers were not independent enough to publish as a score.

Made with

Credit where it is due

Typeset in Geist and Geist Mono by Vercel, and Caveat by Impallari Type, whose hand carries the margin notes. All three are released under the SIL Open Font Licence.

The interface rules follow Vercel's Web Interface Guidelines and Emil Kowalski's writing on animation and design engineering. Where this site departs from either, it is on purpose and the reason is on the motion page.

Built with Claude Code, reviewed by a blind panel, and decided by me.