Skip to content

/opportunity investor deck - #21

Merged
hhff merged 176 commits into
mainfrom
worktree-deck-format
Aug 9, 2026
Merged

/opportunity investor deck#21
hhff merged 176 commits into
mainfrom
worktree-deck-format

Conversation

@hhff

@hhff hhff commented Aug 8, 2026

Copy link
Copy Markdown
Member

/opportunity — the investor deck

A browser-rendered, scroll-snap investor deck for the $15M seed raise, replacing the text-dense fundraising note. Gated behind the same OTP email gate as /fundraising (one verification unlocks both).

Structure

  • 24-page core in four acts: I · The Category (7) → II · Our First Device (7) → III · Under the Hood (5, dark treatment) → IV · The Ask (5)
  • 6-page appendix with dry A-numbered titles: A1 · Revenue model, A2 · Base case, A3 · Scenarios, A4 · Model methodology, A5 · Sources (every figure clickable)
  • Financials sourced from model v3.1; citation registry with 60+ numbered, linked references

Systems

  • Scroll-snap 100dvh pages, fixed chrome with slot-machine page counter, drifting-leaves ambient layer ported from family-book, act-scoped theming (incl. the dark act)
  • Layout archetypes: Statement/BigStat/Split/EvidenceGrid/Ledger/CardsPage/PricingTiers/StatTiles + a QuoteBox-derived card language shared with the homepage, and a heart-icon accent-box (Band) component
  • ?debug=true in-browser copy editor: click-to-edit any text (incl. table cells and tiles), layout/icon pickers, slide delete, OLD/NEW clipboard diffs
  • 118 copy-contract tests locking titles/subs per act, page counts, the once-only $15M rule, em-dash bans, and reference integrity

Review

Adversarially reviewed (structure / figures / code) before merge; production build verified.

🤖 Generated with Claude Code

hhff and others added 30 commits August 4, 2026 16:22
…h evidence bank

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…and inference-utility pages

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…it ask

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…types, FPO assets

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ared OTP gate design

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Adds the seven presentational archetype components (Statement, BigStat,
Split, EvidenceGrid, DiagramPage, Ledger, CardsPage) that content tasks
compose inside DeckPage, plus DeckShell's .deck container and progress
rail with ArrowUp/ArrowDown page navigation.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…yering)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Word band, p10/p12 trims, p11 trust mechanisms, p15 alt parity and
28k+ figure, p16 authoring note removed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Four minimal edits at investor-email strictness over body copy only;
titles, subs, FPO notes and the traction strip untouched.

- p3: vary one of three consecutive "X, so Y" sentences (rhythm uniformity)
- p15: cut "real" from "a real tester" (real/actual adjective inflation)
- p22: cut "Truly" from "Truly local ... the real moat" (hollow intensifier;
  "real moat" kept, it has a named contrast)
- p23: "A patented inventor for architecting..." -> "He is a patented inventor
  for architecting...", fixing the dangling modifier

Also picks up prettier formatting for references.ts, layout.tsx and
opportunity.css, which were not prettier-clean at HEAD. Those three are
formatting-only: whitespace, trailing commas and key-quote style, verified
byte-identical to HEAD after normalisation. No registry content changed.

Word band held (p11 79, p12 80 untouched); refs still attached after terminal
punctuation; all numbers exact; zero em dashes; one $15M deck-wide.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- DeckShell: sync `current` to the actual scroll position via an
  IntersectionObserver on section[id^="page-"], so arrow-key nav no
  longer teleports after wheel scrolling. Also skip preventDefault in
  the keydown handler when focus is in an input/textarea/select or a
  contentEditable element, so the gate's email field keeps working.
- Run prettier on tests/gate-page.test.ts, left unformatted by the
  branch that added it.
- Add a guard test in tests/opportunity-copy.test.ts that scans every
  content .tsx file for <Ref k="..."/> usages and asserts each key
  resolves in the REFERENCES registry, catching typo'd citations at
  test time instead of at render.
Chrome moves intelligence.family to the top left and the page counter to
the bottom right, drops the date, and switches the glyphs to the Roobert
MONO axis at zero tracking.

Every slide is now exactly 100dvh with overflow hidden, so the tall
elements are bounded by construction: FPO boxes cap at 32dvh, the big
stat shrinks, and the content well can shrink instead of pushing the
footer out. Titles get more air below them (sub mt-4, body mt-10).

Adds a splash treatment to Statement for the act-transition pages and a
columns={3} equal-height grid to CardsPage for the hard questions.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
hhff and others added 25 commits August 8, 2026 16:59
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ditable

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Core drops to 23 pages; the base-case plan table joins the financial
cluster between the revenue model and scenarios.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The house cross-section slide lands after the family vault (core back to
24); the redundant appendix unit-economics page is deleted with its Plaud
comp grafted onto Families already pay for this as a fourth card. Appendix
tightens to 9 pages.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@hhff hhff changed the title WIP: /opportunity investor deck /opportunity investor deck Aug 9, 2026
@hhff
hhff marked this pull request as ready for review August 9, 2026 00:45
hhff and others added 2 commits August 8, 2026 17:49
…ixes

Structural: appendix page ids now contiguous FIRST..FIRST+5 in render
order (rail dots, keyboard nav, and chrome meta were broken on A2/A5);
contiguity locked by two new tests. Google Home stat gains its citation;
dead imports dropped. Figures: platform ledger folded to the three ways
its sub promises; grammar and hyphenation slips from rapid copy rounds.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@hhff
hhff merged commit 9211c28 into main Aug 9, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant