- Images/videos fade in on load instead of popping (cached media renders
instantly; nothing is hidden without JS)
- Cross-document view transitions: soft cross-fade between pages where
supported
- Masonry reveals ripple: initial grid and "Load more" batches stagger in
per-tile instead of blinking on at once
- Card hover: gentle -2px lift + slow image zoom on hero, home/grid tiles,
and find cards; find-card lift switched to `translate` so it composes
with the masonry's inline transform (it was silently dead before), and
its transition list unified with .masonry-tile's to end their cascade tie
- Tactile press/lift on "Load more" and the external CTA button
- Accent-tinted ::selection, visible :focus-visible rings, smooth anchor
scrolling; global prefers-reduced-motion catch-all disables it all
Claude-Session: https://claude.ai/code/session_01ADR9r5rw5NuvvnCxfYbMuc
Named width tiers (mobile/narrow/regular/wide) with body max-width easing
between them; grid pages opt in via BaseLayout `wide`. Masonry is now
absolute-positioned with FLIP glides on column-count changes: targets are
computed from the *final* container width (reading --max, which flips
instantly while max-width tweens), mid-glide column changes retarget
instead of being dropped, and container height eases so content below
rides along.
Claude-Session: https://claude.ai/code/session_01ADR9r5rw5NuvvnCxfYbMuc
tldraw: fact-check enriched the find — dual product (free whiteboard /
source-available SDK), licensing corrected to the proprietary tldraw
license (not MIT). Fresh first-party screenshot hero.
Kartell Componibili: first review to carry amazonLink (genuine Kartell
4966/03, sold by Amazon) — exercises the new 'Also on Amazon' affiliate
rendering end to end. New 'design' category.
The useful menagerie, Who actually said that, The completists, Ambient data,
Made on the old machines, Never out of production, Six groans (third serving),
Nothing to win here. All items previously unbundled; zero reuse.
The generator still resolved heroes at the old flat src/content/find/<slug>/
path, so every mosaic was skipped as 'no heroes' and src/generated/
bundle-mosaics sat empty. Home-page bundle tiles have been mosaic-less since
the May migration.
Probed all 59 sources for feeds. Highlights: Atlas Obscura, This Is Why I'm
Broke, A Continuous Lean, Gear Patrol, The Awesomer, Permanent Style, and The
Browser all rescued from blocked/skip status by working feeds; all four Reddit
subs work again via the anonymous .rss endpoint (top/.json remains dead);
MoMA Design Store + Kikkerland switched to Shopify products.json endpoints.
Newly skipped (confirmed dead/dormant): Tools and Toys, One Thing Well,
Cool Material, Werd.com, Unusual Hotels of the World.
- daily-finds: feed-first fetch strategy (fetch: feed + feedUrl), cadence-aware
scanning, new score-and-shortlist stage (shortlist: true, up to 12/day, top
1-3 flagged as review candidates), Amazon affiliate lookup for shortlisted
physical products, and authority to apply mechanical sources.json maintenance
(skip dead sources, demote dormant ones, record working fetch paths) instead
of logging recommendations nobody executes.
- build-bundle: auto mode (no confirmation gate when unattended) and a 'weekly'
date-based catch mode so shortlisted finds never sit invisible for weeks.
- cluster-bundles: auto mode.
- build-review: hero.ts registration step removed (heroes auto-discovered from
hero.<ext>); mandatory fact-check against the product's own site in auto
mode; amazonLink carry-through; auto mode publishes and logs instead of
pausing twice for approval.
- New daily-pipeline skill: capture → bundle → reviews → pick of the day →
build → commit → push → digest, with granular per-stage commits. This is the
entrypoint for scheduled runs.
- Project CLAUDE.md documenting the pipeline and its foot-gun conventions.