SPD Tracker · Project record

The Project in Numbers

A four-module product, designed in conversation with an AI co-pilot and shipped in six days — measured three ways: the collaboration, the code, the process.
Compiled: May 20, 2026
23
Versions shipped
v0.1.0 → v1.4.2 — each logged with its own brief
CHANGELOG.md
~22h
Hours of active work
Across 5 active work days (May 15 → May 20)
.timelog.tsv
20
Pair-programming sessions
Each start marker = one conversation block with Claude
.timelog.tsv
0
Changes without a source
Every release follows the same six-field format
CHANGELOG.md · format
23 versions · ~22 hours · 0 changes without a source.
01 From Claude / AI

One human, one AI co-pilot

Built end-to-end as a conversation between a visual communicator and Claude Code (Anthropic's CLI). Every line of HTML the result of a turn-by-turn dialogue; every commit reviewed and approved by a human before it shipped.
20
Conversation sessions
Each start marker in .timelog.tsv is one block of back-and-forth with Claude. Five on May 15, ten on May 19 — the burst days. No API; the tool runs locally and reads files directly.
source .timelog.tsv
5
Recurring themes
The topics that came back across multiple versions — the working mind of the project.
Cover artwork
IDB brand discipline
Home rework
Operations table
Naming consistencyongoing
source CHANGELOG · titles
5+
Iterations per component
Same surfaces, returned to multiple times until they were right.
Cover (deck)
Home page
IDB logo placement
Operations table
Numbers page
source CHANGELOG · titles
02 From the code itself

The artifact, statically analyzed

A single repository, one language family (HTML / CSS / a sliver of vanilla JS), a deliberately minimal stack. Every file wc -l'd and grep'd directly from the working tree as of v1.4.2.
5,399
Lines of code & documentation
12 HTML pages + the CHANGELOG + 2 SVG assets. Top files by size:
Presentation791
deck
CHANGELOG763
log
What-Changed693
page
Module 03657
module
measure wc -l ./*.html *.md *.svg
100%
AI-typed · human-reviewed
Every line was written by Claude in a turn-by-turn conversation; every line was read and approved by a human before it landed on disk. There is no "manual edit" track separate from the dialogue — the dialogue is the editing.
policy CHANGELOG · who
12
Pages, modules, handlers
Counted directly from the source files.
User-facing pages12
Product modules4
In-page JS handlers33
Backend endpoints0
Deploy mirrors2
measure grep · ls · wc
2
External dependencies
Deliberately minimal. No React, no Vue, no Tailwind, no jQuery.
Google Fonts · InterCDN
reveal.js (deck only)CDN
Native <details>built-in
IDB palette (vars)in-repo
source all HTML files
02 ½ The burst

Twenty-three versions, plotted

CHANGELOG headers distributed across the six-day window. May 15 carried the foundational sprint; May 19 the deck and Operational Support; May 20 the cover lift and the What-Changed rebuild.
May 15 · Fri
v0.1.0 → v1.0.2 · foundational sprint
17
May 16 · Sat
no version
0
May 17 · Sun
no version
0
May 18 · Mon
no version
0
May 19 · Tue
v1.0.3 → v1.3.1 · deck + Operations
5
May 20 · Wed
v1.4.0 → v1.4.2
1
Peak day (17) Active day Quiet Bar width = relative version count · totals on the right
03 From the process

The path from brief to ship

Tight, traceable sessions — every decision logged, every retired exploration kept on disk, every loose end carried into the next version.
~22h
Active development time
Sum of focused work across the 20 sessions in .timelog.tsv. One session was left open across days and is excluded from the sum (it would inflate the figure to ~27 hours and obscure the real cadence).
source .timelog.tsv
23
Versions / MVP states
From v0.1.0 (first dashboard, May 15) to v1.4.2 (Changes-tab rebuild, May 20). Each release has its own dated CHANGELOG entry with what, why, decisions and who.
source CHANGELOG · headers
6
Stretch items deferred
MVP fully shipped. These are pending for v1.5+:
Click-only nav verifyQA
Internal slide polishdesign
What-Changed Lessons tabcopy
Local launcher packtooling
OPC reviewer pooldata
Strategic-Fit-DT QAverify
source CHANGELOG · pending
10+
Decisions discarded
Explored, then dropped. The criterion of the work shows in what was not shipped.
4 retired prototypes_retired/
SVG-baked cover text→ HTML
~30 inline IDB logos→ 1 SVG
"Layer" terminology→ Module
"Front Office" prefixdropped
syncChrome() + on-coverdead code
source CHANGELOG · _retired/
03 ½ The path

Twenty-three versions, in five arcs

Every version dated and logged. Grouped here by narrative arc — the story the project tells itself.
v0.1 → v0.5 Foundations — first dashboard, IDB brand audit (4 off-brand colours corrected), products reframed as buttons, four-module refocus, full translation to English. May 15
v0.6 → v0.11 From cover to companion — presentation cover rebuilt from a Figma sketch, "Project in Numbers" companion page added and reframed, work-minute figures and byline tuned. May 15
v1.0 → v1.0.3 Ready to ship + Home rework — deck ready for deploy, retired files moved to _retired/, Home four-card grid reworked with roadmap framing (quarter + status badges). May 15 – 19
v1.1 → v1.2 The deck + Operational Support — hybrid SVG/HTML cover, four navigable modules, click-only navigation; notifications bell, reviewer filter, Corporate Support table redesigned, headers aligned. May 19
v1.3 → v1.4.2 Cover lift + IDB unification + What-Changed rebuild — roadmap lifted from SVG to HTML, IDB logo unified to one SVG + one CSS rule across every page, 3D card swap, twinkling stars, three-element bottom utility row, two new Operations columns, Changes tab rebuilt as a 3-mock equation. May 19 – 20
Live deploy
Cloudflare Pages · manual drag-and-drop publish · two deploy folders (full deck + tracker-only)
The figure that matters

Zero changes without a source0

Across all 23 versions, the CHANGELOG records each change in one fixed format — date · version · what changed · why · decisions · who. The why names the meeting, the brief or the screenshot that triggered the change; the who names the author. Not one screen, colour, label or behaviour entered the product without a recorded source. The AI helped type faster; the human decided what was worth typing. That is the discipline this page holds itself to: every number above cites the file it came from — nothing is estimated for effect.