Skip to content

Redesign the home hero around a tree-ring cross-section - #16

Merged
amrtgaber merged 1 commit into
mainfrom
hero-tree-rings
Jul 20, 2026
Merged

Redesign the home hero around a tree-ring cross-section#16
amrtgaber merged 1 commit into
mainfrom
hero-tree-rings

Conversation

@amrtgaber

Copy link
Copy Markdown
Contributor

Summary

Replaces the centered logo/title/button hero with an asymmetric composition: stacked Fraunces wordmark, tagline, and CTA on the left; a dendrochronology figure on the right. Growth rings record history the way the blog does — that's the concept.

  • New TreeRings component (src/components/tree-rings.tsx): all geometry generated at module load from a fixed seed (deterministic across renders and tests, no hydration drift). Irregular ring spacing/wobble and occasional heavy latewood bands; one green ring just under the bark (the cambium — the living layer); the existing woodcut artwork sits vignetted at the pith, with its caption band positioned to fall outside the clip circle.
  • Rings draw outward from the pith on load (pathLength={1} + dash offset, ~70ms stagger per ring), fully disabled under prefers-reduced-motion.
  • New theme tokens --ring-ink and --pith with light/dark variants; the pith disc stays parchment-light in dark mode so the black-ink figures remain visible.
  • The hero logo <img> is removed — the artwork now appears only in the header and at the pith.

No new dependencies, no new image assets; the figure is ~20 SVG paths.

Testing

  • Vitest suite passes (hero heading keeps its accessible name with the stacked wordmark).
  • Verified locally in light and dark modes at desktop and 390px mobile widths; reduced-motion path renders rings fully drawn.

Replaces the centered logo/title/button stack with an asymmetric hero:
a stacked display wordmark, tagline, and CTA on the left, and a
dendrochronology figure on the right — growth rings drawn in walnut ink
with the woodcut artwork vignetted at the pith.

- New TreeRings component: ring geometry generated once at module load
  from a fixed seed (deterministic across renders/tests); irregular ring
  spacing, wobble, and occasional latewood weights; a green cambium ring
  under the bark; the logo image clipped so its caption band falls
  outside the pith circle
- Rings draw outward from the pith on load via pathLength/dash staggered
  per ring; fully disabled under prefers-reduced-motion
- New --ring-ink and --pith tokens (light/dark variants); the pith disc
  stays parchment-light in dark mode so the black-ink figures remain
  visible
- Hero logo <img> removed; the artwork now appears only in the header
  and at the pith
@netlify

netlify Bot commented Jul 20, 2026

Copy link
Copy Markdown

Deploy Preview for treepolitics-web ready!

Name Link
🔨 Latest commit 8169361
🔍 Latest deploy log https://app.netlify.com/projects/treepolitics-web/deploys/6a5eb32bc607480008380676
😎 Deploy Preview https://deploy-preview-16--treepolitics-web.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@amrtgaber
amrtgaber merged commit 7749a56 into main Jul 20, 2026
6 checks passed
@amrtgaber
amrtgaber deleted the hero-tree-rings branch July 20, 2026 23:46
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