overhaul: homepage + the composed section vocabulary - #22
Open
CS-5 wants to merge 1 commit into
Open
Conversation
Phase 06. Rebuilds the homepage from DESIGN.md with legacy's copy (D8), and lands the `ui/` components the rest of the site reuses: Hero, Section, FeatureCard, FeatureGrid, SponsorStrip, CtaBanner. Section carries the atmosphere device as a single-valued prop, because §2 allows exactly one per boundary and says "never stacked" — two on one section is unrepresentable rather than merely discouraged. The page cycles them: ghost numerals 01-03, a tint band on the FIRST interlude, an ambient pool on the video, a ruler divider before the sponsors, registration marks on the closing pocket. The hero takes its media through a slot: legacy's homepage hero is a photograph, so D20's video handling belongs to the FRC page in Phase 07 rather than shipping unused here. Five join cards lay out as DESIGN.md §5's own worked 2+3 example, via a `feature-grid-2-3` utility — slotted children and token breakpoints, the two reasons a style leaves a component. The homepage's images moved into `src/assets/` so astro:assets processes them, and the source optimizer re-encoded the seven that qualified (1.33 MB). Preview, mobile: Lighthouse 100 accessibility / 100 SEO / 100 best practices; LCP 1369 ms and CLS 0.00 on Slow 4G + 4x CPU. Also fixes the format-lint hook, which routed .css to oxlint — a linter with no CSS rules, which exits 1 on "No files found to lint" and so blocked every edit to global.css. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VjVuZTwNY6hNyq9c7eN9rU
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Phase 06. Rebuilds the homepage from DESIGN.md with legacy's copy (D8), and lands the
ui/components the rest of the site reuses: Hero, Section, FeatureCard, FeatureGrid, SponsorStrip, CtaBanner.Section carries the atmosphere device as a single-valued prop, because §2 allows exactly one per boundary and says "never stacked" — two on one section is unrepresentable rather than merely discouraged. The page cycles them: ghost numerals 01-03, a tint band on the FIRST interlude, an ambient pool on the video, a ruler divider before the sponsors, registration marks on the closing pocket.
The hero takes its media through a slot: legacy's homepage hero is a photograph, so D20's video handling belongs to the FRC page in Phase 07 rather than shipping unused here. Five join cards lay out as DESIGN.md §5's own worked 2+3 example, via a
feature-grid-2-3utility — slotted children and token breakpoints, the two reasons a style leaves a component.The homepage's images moved into
src/assets/so astro:assets processes them, and the source optimizer re-encoded the seven that qualified (1.33 MB).Preview, mobile: Lighthouse 100 accessibility / 100 SEO / 100 best practices; LCP 1369 ms and CLS 0.00 on Slow 4G + 4x CPU.
Also fixes the format-lint hook, which routed .css to oxlint — a linter with no CSS rules, which exits 1 on "No files found to lint" and so blocked every edit to global.css.
Claude-Session: https://claude.ai/code/session_01VjVuZTwNY6hNyq9c7eN9rU