Skip to content

feat(layout-v2): give the rail its own Home button - #6572

Merged
rebelchris merged 4 commits into
mainfrom
claude/rail-home-button
Sep 1, 2026
Merged

feat(layout-v2): give the rail its own Home button#6572
rebelchris merged 4 commits into
mainfrom
claude/rail-home-button

Conversation

@tsahimatsliah

@tsahimatsliah tsahimatsliah commented Sep 1, 2026

Copy link
Copy Markdown
Member

Reverses the home affordance introduced in #6406: the brand mark goes back to being a brand mark, and Home becomes a rail control of its own.

Why

#6406 made the daily.dev logo double as Home, crossfading into a home glyph whenever the pointer touched anywhere on the rail. That put the destination behind a hover. At rest nothing on the rail said "home", and the mark changed shape under a pointer that was only passing through on its way to a tab.

What changes

  • The logo stays the daily.dev mark at all times, and its tooltip names the product rather than a destination.
  • Home is its own button, between the logo and Search, with the same resting and active treatment as every other rail control (HomeIcon, secondary when active, aria-current="page").
  • Clicking either still lands on the same feed, so the mark keeps its familiar click.

Both share one onGoHome handler. The extension's onLogoClick defaults the event and switches the feed in place (to My Feed on the new tab), so letting Home's handler run afterwards would overwrite that with the default feed. On the webapp onLogoClick is undefined, so Home owns the click.

group/rail on the nav existed only to drive the crossfade, so it goes with it. Nothing else in the codebase consumes group-hover/rail or group-focus-visible/rail.

Note on timing

The commit dates from 8 Aug and sat on an unopened branch; this PR is it finally being raised. Current main has been merged in, and it applied with no conflicts: nobody has touched this part of the rail since.

Verification

  • shared: 383 suites / 2742 tests, exit 0
  • webapp: 82 suites / 649 tests, exit 0
  • extension: 6 suites / 52 tests, exit 0
  • typecheck-strict-changed and eslint clean

No test asserted the old crossfade behaviour, so none needed updating.

🤖 Generated with Claude Code

Preview domain

https://claude-rail-home-button.preview.app.daily.dev

tsahimatsliah and others added 2 commits August 8, 2026 18:38
The brand mark used to be the way home, crossfading into a home glyph
whenever the pointer touched the rail. That put the destination behind a
hover: at rest nothing on the rail said "home", and the mark changed
shape under a pointer that was only passing through on its way to a tab.

The logo is a logo again. It stays the daily.dev mark at all times, its
tooltip names the product rather than a destination, and Home is now a
button of its own between it and Search, with the same resting and
active treatment as every other rail control. Clicking either still
lands on the same feed, so the mark keeps its familiar click.

Both share one handler because the extension's onLogoClick defaults the
event and switches the feed in place; letting Home's handler run after
that would overwrite it with the default feed.

`group/rail` on the nav existed only to drive the crossfade, so it goes
with it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Sep 1, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
daily-webapp Ready Ready Preview Sep 1, 2026 1:40pm UTC

Request Review

@rebelchris
rebelchris merged commit 78228c2 into main Sep 1, 2026
12 checks passed
@rebelchris
rebelchris deleted the claude/rail-home-button branch September 1, 2026 13:44
tsahimatsliah added a commit that referenced this pull request Sep 1, 2026
Main moved the shortcuts dock onto settings flags (#6567) and gave the
rail its own Home button (#6572). The dock's "storage has answered"
signal the pin coach waits on is now isRemoteSettingsLoaded, and the
rail's shared row gap wraps the dock container the tour passes props to.
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