Skip to content

Build the landing page with subscribe cards and next launch - #8

Merged
roma321m merged 1 commit into
mainfrom
feat/landing-page
Oct 1, 2026
Merged

roma321m merged 1 commit into
mainfrom
feat/landing-page

Conversation

@roma321m

@roma321m roma321m commented Oct 1, 2026

Copy link
Copy Markdown
Collaborator

What

  • npm run build renders src/page.html into site/index.html from src/calendars.ts (one card per calendar: Add to Google Calendar, Apple / Outlook via webcal://, copy ICS link) and writes site/next.json (next 5 launches).
  • site/app.js: next launch panel with T-/T+ countdown in the visitor's time zone, moves to the next launch when one ends; copy button with clipboard and prompt fallback. Page works without JS apart from those two.
  • SpaceX-inspired design (black, D-DIN, outline buttons), self-hosted D-DIN (OFL) and one NASA public-domain photo (CRS-20, credited, no endorsement implied). No third-party requests, no cookies; 272 KB total.

Why
Replaces the placeholder with the subscribe page for the 4 calendars.

Verification

  • 71 tests green, typecheck clean; page renderer and nextLaunches assertions mutation-checked (one equivalent mutant: base64 vs base64url, identical for all 4 real ids).
  • Local preview at 1600, 1280 and 375 px: no horizontal scroll, fonts load, all requests same-origin. Countdown verified live (Crew-13 "Just launched", T+) and by faking the clock past each launch (switches, then hides). Copy: success label and status, double-click restore, prompt fallback when the clipboard is blocked.
  • Roman clicked "Add to Google Calendar" in his own browser: Google offered to add the right calendar.
  • Independent review findings fixed (label race, https-only webcast links, $& in replacement, per-calendar link labels, copy status for screen readers, NASA endorsement line); all-day launches switching at UTC midnight kept on purpose to match the build.

🤖 Generated with Claude Code

The page is generated from src/calendars.ts so the Google ids and feed
links cannot drift from the calendars.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@roma321m
roma321m merged commit 4dbbca8 into main Oct 1, 2026
1 check passed
@roma321m
roma321m deleted the feat/landing-page branch October 1, 2026 15:42
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