feat: a red thread through the homepage, in words and as a line
The rail and the "next, you are wondering" links are gone (owner: flat, and the question stood twice in a row). The page now reads from top to bottom: Every chapter opens with one sentence, and the sentences follow each other as the way of a project: you need someone who builds it, first we find out what you need, sometimes it is less work by hand, sometimes a meeting, then it always runs the same way, in the end something runs, a few questions remain, and it starts with an email. One line runs down the whole page and draws itself as the visitor scrolls. Under each sentence it crosses the page, stands a figure on the line (diamond, hexagon, screen, circle, square, triangle) and continues down the other side; a glowing dot travels at its head and comes to rest in front of the last sentence. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -63,12 +63,14 @@ App lives in `apps/web`. Social media videos live in `apps/video` (Remotion, sta
|
||||
along the edge of an element, digits drifting off it; glow only on dark surfaces, on light ones just a
|
||||
few blue digits), `BitSeam` (lit top edge of a dark section), `BitGlow` (light following the pointer on
|
||||
`data-glow` surfaces). Reuse them instead of inventing new effects.
|
||||
- The homepage is a guided story (`apps/web/src/components/story/`): it follows the questions a visitor has
|
||||
(`story.chapters` in the content files). Each chapter ends with `NextChapter`, the next question as a link
|
||||
that leads on; `StoryGuide` is the rail with one station per chapter and a travelling dot (a pill on
|
||||
phones), and the header names the current question. Sections become chapters through `data-chapter`
|
||||
(`Block` prop `chapter`). Where the visitor is, is computed in `src/domain/chapters.ts`. A new section
|
||||
on the homepage needs a chapter and a question, or it breaks the thread.
|
||||
- The homepage is one story with a visible thread (`apps/web/src/components/story/`). Every chapter opens
|
||||
with one sentence from `story` in the content files; read one after the other they tell the way of a
|
||||
project from the idea to the first email. `StoryThread` is one line down the whole page that draws itself
|
||||
as the visitor scrolls: under each sentence it crosses the page, stands a figure on the line and continues
|
||||
on the other side, with a glowing dot at its head. `Block` prop `chapter` gives a section its sentence and
|
||||
figure; how much of the line is drawn is decided in `src/domain/thread.ts`. A new section on the homepage
|
||||
needs a sentence that continues the story, or it breaks the thread. No rails, no "next question" links
|
||||
(owner rejected both).
|
||||
- `DecodeText` is for monospaced text only; in proportional type the changing glyph widths make text jump.
|
||||
- Never put an in-view trigger on an element that clips itself away (clip-path): a fully clipped element
|
||||
never counts as visible. Observe an unclipped wrapper (see `BitWipe`).
|
||||
|
||||
Reference in New Issue
Block a user