Press Room — the splash gets a face, and the hero argues the thesis instead of describing it
flave's GitHub Pages splash ships with a deliberately divergent identity: graphite ground, Space Grotesk over Instrument Sans, zero-radius ledger rows, registration-mark ornament, and a misregistered display type that reads as an almost-aligned print run. The palette is the product's thesis — the clearance ramp runs cool to hot as exposure increases — and the hero renders one real paragraph at four clearance levels so a reader understands the model before reading a word of prose.
Why Care?
Because a splash for a document product should demonstrate the document product, and most of them describe it instead.
flave’s whole claim is that content carries a visibility level and one file yields several honest versions of itself. So the hero does not illustrate that with a diagram — it runs it. The same paragraph from a real investor update renders at four clearances, and the reader switches between them:
- private — “Call w/ Dana 8/12 — she’s worried about the Q3 churn number and honestly so am I. 61% CM is real but it’s flattered by the infra renegotiation…”
- team — the full picture including the seven points that will not recur
- lp — the same facts, composed for an audience
- public — “Margins hit 61%, up 13 points.”
By the time anyone reaches the prose below the fold, they already understand what a .flave does. That is worth more than three paragraphs explaining it.
What’s New?
A splash at splash/, single-project variant per the maintain-splash-pages skill — no submodules, so content.config.ts reads ../changelog and ../context-v as plain file IO. Pagefind search, sort controls, three-mode toggle, sitemap. Deploys to https://lossless-group.github.io/flave/ on push to main.
A DESIGN.md following the Stitch open spec, with the identity named and its divergence from sibling splashes recorded as a table. The skill is explicit that the recurring failure across the first three splashes was inheriting the previous one’s hero composition and card geometry, then renaming brand variables to “make it different.” Press Room diverges in shape: strata stack rather than centered hero or diagram column, ledger rows rather than rounded glass, registration marks rather than radial mesh or paper grain.
The palette is semantic. --color-clearance-private | -team | -lp | -public runs graphite → slate → amber → vermilion, cool to hot as exposure increases. It is the spec’s §11.1 rendered as color. DESIGN.md carries the one rule worth enforcing in review: never reach for amber because a card needs warmth — if a surface uses a clearance color, that surface is making a claim about who can see something.
Misregistration as the signature move. Display headings render three times — a vermilion plate and a slate plate offset 2px in opposing directions, bone text on top. It reads as an almost-aligned print run: a professional artifact with a visible human error, which is the tone the brief asked for. Doubled to 4px in vibrant mode. The offset plates are ::before/::after, so screen readers never hear the heading three times.
Also Included
A real bug fixed, inherited from the reference implementation. formatDate rendered frontmatter dates in the build machine’s local timezone. YAML parses a date-only value like 2026-08-15 to UTC midnight, so every date on the site displayed a day early for anyone west of UTC — this entry’s own sibling was showing as August 14. Fixed by formatting with timeZone: 'UTC', which is the correct treatment for values that have no meaningful time component. lfm/splash has the same bug and wants the same one-line fix.
formatDate now also accepts undefined rather than requiring a Date, which matters because the lenient-schema fallback documented in content.config.ts means a date is never guaranteed to have parsed.
No OG image, deliberately. seo.ts exports an empty OG_IMAGES, and MetaTags.astro was made absent-safe so it omits every image tag rather than emitting a broken URL. An absent og:image unfurls as a clean text card; a 404 unfurls as a grey box. The generation recipe is written down in DESIGN.md §8 for when it’s worth doing.
The splash says plainly that flave is pre-implementation, and the home page carries the build order — v0, v1, and an explicit “designed, parked” row. Overclaiming would undercut a product whose entire pitch is that documents should be honest about what they contain.