Skip to content

Trail-themed portfolio: hero hike, home camps, six-step case studies - #407

Open
AdamJ wants to merge 13 commits into
mainfrom
feat/trail-hero-motion
Open

AdamJ wants to merge 13 commits into
mainfrom
feat/trail-hero-motion

Conversation

@AdamJ

@AdamJ AdamJ commented Oct 26, 2026

Copy link
Copy Markdown
Owner

Summary

Rebuilds the portfolio around a trail theme with scroll-driven motion, a new home page, and a six-step case study template.

  • Hero hike: scroll-driven hiker and trail with fade and reset between scenes.
  • Trail progress: camp ticks, a pinned rail hiker on desktop, and a progress track on phones. Opt in with camps front matter.
  • Home page: rebuilt as camps (work stack, principles, proof, about, summit) with word-by-word quote reveal, count-up numbers, app tile tilt, and stacking cards.
  • Case study template: new case-study.njk layout and _case-study.scss. CASim, ArchParser, Task-it, Component Library, ALM, Color Picker, and Soccer Game Tracker use it. Steps with no source content are omitted rather than filled with placeholders.
  • Screenshots: job names, firm names, and the 503 counts in the ArchParser images are blurred.

Notes for review

  • Timetracker still uses the old layout.
  • The "25% faster development cycles" result on Component Library comes from its card summary.
  • meta.email is empty, so the home Email button is hidden until it is set.
  • Reduced motion is respected: motion.js returns early and the trail steps between camps.

Test plan

  • pnpm run build:sass and pnpm run build:eleventy succeed
  • stylelint clean on new SCSS
  • Playwright: one h1, no overflow, no broken images at 1440 and 390 on all case study pages
  • Review headline copy on Task-it and the four partial pages
  • Check dark mode and keyboard focus on the trail ticks

Generated by Claude Code

On first scroll the hiker, flag, and trail fade out, the trail clears, and the hiker
reappears at the trailhead. Scroll distance then redraws the trail and carries him to
the peak. Returning to the top restores the summit scene so each trip down starts a
new hike. The load timer never replays, and reduced motion keeps the static scene.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
Pages opt in with a camps list in front matter. Ticks are real anchor links that mark
the active camp. Desktop gets a pinned rail hiker that fades in as the hero leaves and
plants a flag at the summit. Phones get a progress track and a bottom tick bar. Reduced
motion steps the hiker between camps. The home page is wired to its current sections.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
Hero statement, stacked selected work with more-work tiles, principles, proof cards, about
with Brimfield Labs apps, and a summit contact section. Trail progress now ends when the
summit camp arrives, hides at the footer, and moves to a bottom strip below 1200px. The
Email me button stays hidden until meta.email is set.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
Quote words fade from muted to ink as the principle block crosses the viewport center,
proof numbers count up once, app tiles tilt toward the pointer, and pinned work cards
scale and dim as the next card arrives. All of it stays off under reduced motion.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
Adds case-study.njk layout (hero, headline, facts, results, step camps
wired to the trail progress), _case-study.scss, and ports CASim and
ArchParser copy from the canvas. CASim diagrams added as SVG assets.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
…nto the case study template

Steps without source content are omitted rather than filled with placeholders.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Deploying adamj-github-io with  Cloudflare Pages  Cloudflare Pages

Latest commit: 7fc727b
Status: ✅  Deploy successful!
Preview URL: https://be036916.adamj-github-io.pages.dev
Branch Preview URL: https://fix-hero-summit-and-mobile-l.adamj-github-io.pages.dev

View logs

…rser case studies

Carries over the sole-role facts, card summaries, What I did alone block,
ownership notes in decisions, and the added lessons.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz

AdamJ commented Oct 26, 2026

Copy link
Copy Markdown
Owner Author

Folded in the content from #406 (solo ownership framing for CASim and ArchParser) in the latest commit, so #406 can close. As noted there, a few of those sentences are inferences from the facts provided, and the CASim research paragraph has no numbers yet. Please check them before merging.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Wxf3HNQfWxSyt5azTrMeuz


Generated by Claude Code

The scroll hike faded the hiker out and sent him back to the trailhead on
the first scroll, then tied his climb to scroll position. Once the intro
climb finishes he now stays at the summit. Removes the scroll-hike logic
in motion.js and its is-resetting, is-scrubbing, and is-planted styles.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BFNdMgJBfjGVmoncvFy869
On phones the scene was sized as a percentage of the hero, so the tagline
ran over the summit, flag, and sun (83px to 287px of overlap across common
phone sizes). Below 600px the scene now has a fixed height and the hero
reserves that space under the text. Tablet and desktop are unchanged.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BFNdMgJBfjGVmoncvFy869
…ed stale

The service worker precaches every page, script, and stylesheet but never
skipped waiting, so after a deploy returning visitors kept getting the old
files until every tab of the site was closed. A new worker now takes over as
soon as it installs; a deploy shows up on the second reload.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BFNdMgJBfjGVmoncvFy869

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

minor Minor release tag

Projects

Status: Ideas

Development

Successfully merging this pull request may close these issues.

2 participants