Skip to content

Polish the landing page phone frame - #149

Merged
TeoSlayer merged 1 commit into
TeoSlayer:mainfrom
artemiia:feat/phone-frame-polish
Sep 14, 2026
Merged

TeoSlayer merged 1 commit into
TeoSlayer:mainfrom
artemiia:feat/phone-frame-polish

Conversation

@artemiia

Copy link
Copy Markdown
Contributor

What

The hero phone on the landing page was a flat dark slab: the screen ran straight to the top edge and the two side buttons were 3px slivers that disappeared against the page background. This redraws the frame so it reads as a phone at a glance:

  • Titanium-style band with a black glass bezel around the display
  • Dynamic Island with a camera lens dot
  • iOS status bar: 9:41, signal bars, Wi-Fi, battery (inline SVG, no assets)
  • Physical buttons: action, volume up, volume down on the left, power on the right
  • Home indicator under the key row

The island is positioned absolutely against the screen so it stays centred at every width. In the existing narrow-screen media block it shrinks slightly so it clears the status icons on the 310px phone layout.

Scope

Only web/main.ts (hero markup), web/landing.css and a CHANGELOG line. All new elements are aria-hidden; nothing about the terminal demo content or the copy changes. The phone-proof screenshot frames further down the page are untouched.

Checks

  • node scripts/test-landing-seo.mjs passes
  • node scripts/test-mobile-controls.mjs passes
  • Page loads with zero console errors in headless Chromium at 1400px and 390px

🤖 Generated with Claude Code

https://claude.ai/code/session_01NXDEuHKjJRWb5b4U9DdEQK

Give the hero phone a titanium-style band, black bezel, Dynamic Island
with a camera dot, an iOS status bar (time, signal, Wi-Fi, battery),
physical action/volume/power buttons and a home indicator. The island is
centred absolutely so it stays put at narrow widths, where it shrinks
slightly to clear the status icons.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NXDEuHKjJRWb5b4U9DdEQK
@artemiia
artemiia requested a review from TeoSlayer as a code owner September 14, 2026 11:37
@TeoSlayer
TeoSlayer merged commit 85ac288 into TeoSlayer:main Sep 14, 2026
15 checks passed
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.

2 participants