Skip to content

feat(app): declutter sidebar corner into a single chrome strip#4017

Merged
louis030195 merged 2 commits into
mainfrom
claude/strange-edison-d16286
Jun 11, 2026
Merged

feat(app): declutter sidebar corner into a single chrome strip#4017
louis030195 merged 2 commits into
mainfrom
claude/strange-edison-d16286

Conversation

@louis030195

@louis030195 louis030195 commented Jun 11, 2026

Copy link
Copy Markdown
Collaborator

why

The top-left corner stacked 13 visual elements into ~240x70px: traffic lights, collapse, search, the wordmark, then a row of monitor/mic/speaker icons (each with counts and 4 opacity micro-states), a divider, a bell with a "9+" numeric badge, and a phone toggle. That is debug-level detail promoted to permanent chrome, and the opposite of DESIGN.md ("when in doubt, remove") and the progressive disclosure principle.

before / after / collapsed

mockup

what changed

  • monitor / mic / speaker / phone icons fold into one recording-status dot: solid = recording, hollow = something paused, pulsing = meeting in progress
  • clicking the dot opens a popover with per-device detail: pause/resume for audio devices, meeting start/stop (the phone icon duplicated a control that already lives in the meetings section)
  • bell badge: numeric "9+" count becomes a quiet 6px unread dot, the count was permanent inbox anxiety
  • wordmark removed, the chrome strip (collapse, search, dot, bell) sits next to the traffic lights and nav starts immediately, same structure as the Claude and Codex desktop apps
  • collapsed = hidden: no more 72px icon rail. The strip floats over content reduced to expand toggle + status dot. Cmd+B and focused-meeting auto-collapse now give content the full window (the h-8 drag region already keeps the top band free of interactive content)
  • net ~-330 lines across home/page.tsx and app-sidebar.tsx, new components/recording-status.tsx

notes

  • no behavior removed: device pause/resume and manual meeting toggle still work, one click deeper; search keeps its global shortcut while collapsed
  • notification-bell-trigger and popover testids unchanged (windows-user-journey e2e untouched); no e2e spec touches the old icon rail; new testids recording-status-trigger, recording-status-popover, recording-status-meeting-toggle, notification-bell-unread-dot
  • useOverlayData polling removed from the home page (was only feeding the icon opacity micro-states)
  • CollapsedChatSidebarButton in chat-sidebar.tsx is now unused, left in place for a follow-up removal to keep this diff reviewable
  • bun run build passes on both commits

🤖 Generated with Claude Code

Louis Beaumont and others added 2 commits June 11, 2026 13:43
13 elements across 3 rows become 4 elements in 1 strip (collapse,
search, recording-status dot, notification bell). The monitor, mic,
speaker and phone icons fold into one status dot with a detail popover
(per-device pause/resume, meeting start/stop). The bell badge drops the
numeric count for a quiet unread dot. The wordmark is removed, nav
starts immediately, matching Claude and Codex app chrome.

Follows DESIGN.md (when in doubt, remove) and progressive disclosure:
chrome answers only "is it recording?", detail lives one click away.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Collapsing no longer leaves a 72px icon-only column. The sidebar
disappears and the floating top-left strip reduces to two elements:
expand toggle + recording-status dot (Claude / Codex style). Cmd+B and
the focused-meeting auto-collapse now give the content the full window.

Removes the dead collapsed branches from the nav (one-per-line icon
rows, tooltip wrappers, justify-center ternaries) and the collapsed
prop + width token from AppSidebar. CollapsedChatSidebarButton in
chat-sidebar.tsx is now unused, left for a follow-up removal.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@louis030195 louis030195 merged commit 3aaca4c into main Jun 11, 2026
15 of 19 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.

1 participant