Skip to content

Commit 787445f

Browse files
bloveclaude
andcommitted
fix(website): correct the comments the loud band made false
The call site in page.tsx still described 'a slim dark strip, not a second CTA' -- both halves now wrong, and the second is the exact thing the spec records the change as deliberately accepting the opposite of. It survived because the plan's comment sweep only listed files the diff already touched. Also: the licence is no longer a pill 'tag'; the docblock's 'four words' counted only half the band's copy; and the headline guard's comment claimed a word count where the assertion is a character budget. Two style fixes with existing precedent: the runway takes pointer-events none like the dark surface's top seam, so it cannot swallow a selection drag across the band's bottom padding, and the hand-rolled eyebrow carries the line-height the Eyebrow primitive would have pinned. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1 parent 9345738 commit 787445f

5 files changed

Lines changed: 15 additions & 6 deletions

File tree

apps/website/src/app/page.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ export default function HomePage() {
4040
(live-stage spec §3, §8). Copy lives in STAGE_RAIL (positioning.ts). */}
4141
<Stage proof={STAGE_PROOF} />
4242

43-
{/* The open-source beat: a slim dark strip, not a second CTA. Copy lives
44-
in OPEN_SOURCE_STRIP (positioning.ts). */}
43+
{/* The open-source full stop: a loud dark band with one fork CTA. Copy
44+
lives in OPEN_SOURCE_STRIP (positioning.ts). */}
4545
<OpenSourceStrip />
4646
<TeamsBlock formPolicy={formPolicy} />
4747
<HomeFAQ />

apps/website/src/components/landing/OpenSourceStrip.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import { GITHUB_REPO_URL, OPEN_SOURCE_STRIP } from '../../lib/positioning';
1515
* page — the reasoning was that the offer is "no catch, no upsell," so it
1616
* should not read as a second pitch. That restraint is now spent on purpose:
1717
* the open-source offer is one of the strongest things the product has to
18-
* say, and it is said here in four words and one aviation marking.
18+
* say, and it is said here in two words over an aviation code.
1919
*
2020
* The band takes its ~461px from the standard section rhythm; there is no
2121
* padding override, which is why `tight` is absent rather than false.

apps/website/src/lib/positioning.spec.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,8 +161,9 @@ describe('homepage restructure copy (live-stage spec §3)', () => {
161161
const { OPEN_SOURCE_STRIP } = await import('./positioning');
162162
expect(OPEN_SOURCE_STRIP.eyebrow).toBe('Squawk 1200');
163163
expect(OPEN_SOURCE_STRIP.headline).toBe('Fork us.');
164-
// The headline is set at up to 116px. More than two short words wraps,
165-
// and a wrapped headline stops reading as a full stop.
164+
// A length budget, not a word count: 12 characters is about what fits
165+
// on one line at 116px in Archivo Black inside the 1200px container.
166+
// A wrapped headline stops reading as a full stop.
166167
expect(OPEN_SOURCE_STRIP.headline.length).toBeLessThanOrEqual(12);
167168
// The eyebrow sits on one line at 0.18em tracking beside nothing else.
168169
expect(OPEN_SOURCE_STRIP.eyebrow.length).toBeLessThanOrEqual(14);

apps/website/src/lib/positioning.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export const OPEN_SOURCE_STRIP = {
7777
eyebrow: 'Squawk 1200',
7878
/** Two words at up to 116px. The band's entire argument. */
7979
headline: 'Fork us.',
80-
/** The licence tag beside the action. */
80+
/** The bare licence, set in mono after the action. */
8181
licence: 'MIT',
8282
cta: 'Fork on GitHub',
8383
} as const;

apps/website/src/styles/landing.css

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,6 +630,10 @@
630630
font-weight: 700;
631631
letter-spacing: 0.18em;
632632
text-transform: uppercase;
633+
/* The Eyebrow primitive pins 1.4; this rule is hand-rolled for the tighter
634+
11px/.18em the band wants, so it has to carry the line-height too rather
635+
than inherit the body's. */
636+
line-height: 1.4;
633637
color: var(--color-signal);
634638
margin: 0 0 22px;
635639
}
@@ -661,6 +665,10 @@
661665
/* The runway centreline. A fixed 46px dash on a 92px period rather than a
662666
* proportional one, so it reads as the same painted marking at every width. */
663667
.open-source-strip-runway {
668+
/* Decorative and layered over the band's bottom padding, so it must not
669+
swallow a text-selection drag — the dark surface's top seam
670+
(ui.css, [data-surface="dark"]::before) sets this for the same reason. */
671+
pointer-events: none;
664672
position: absolute;
665673
left: 0;
666674
right: 0;

0 commit comments

Comments
 (0)