Skip to content

Fix the web app's phone layout: top bar, menu and broken lists - #22

Closed
EmotiveImpact wants to merge 3 commits into
mainfrom
claude/project-thread-1ojqaf
Closed

EmotiveImpact wants to merge 3 commits into
mainfrom
claude/project-thread-1ojqaf

Conversation

@EmotiveImpact

@EmotiveImpact EmotiveImpact commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner

Requested by Edem · project thread

Before: on a phone, the web app's top bar took up about a quarter of the screen. It had an empty white search bar, a logo circle that looked like a loading spinner, and a squeezed page description. The menu button opened a bottom sheet with internal-sounding copy that didn't match the desktop sidebar. Home's "Needs you" list broke apart on /inbox, the Hub's links ran together, the Expenses filter chips were hidden behind the search box, Settle showed raw ISO dates, and iOS Safari zoomed the page every time a form field got focus.

After: the top bar is one slim row (menu, title, then search, account and notifications). The menu button opens the desktop sidebar as a drawer from the left, with the commune switcher and account. The lists, links, filters and dates listed above all lay out properly at 320 to 430px, and form fields are 16px on phones so focusing one no longer zooms the page.

Edem picked the single-row top bar (option A) from three prototypes.

How

  • Shell.tsx: MoreSheet now renders Sidebar in drawer mode (role="dialog", close button, Escape closes it, and it only mounts while open). In basic navigation mode the drawer also lists Members and Templates, because the old sheet was the only other route to them. The old .a-more* sheet styles are removed from app.css and overrides.css. The header logo mark, which was only ever shown on phones, is gone.
  • design-system.css: the phone header, the drawer, list toolbars that wrap at 850px and below, 16px fields on phones, and amounts that don't break mid-number.
  • overrides.css: the full-width header search row now applies only from 701 to 850px, where its label shows. Home's card and row rules also cover #home-inbox.
  • Home.tsx: the commune label on "Needs you" rows only appears when the items come from more than one commune.
  • Hub.css: the "View all" links stack, and the avatar overlap is halved so initials aren't clipped.
  • Money.tsx: Settle uses the formatted due date.
  • design-tokens.test.ts: the bottom sheet corner assertion is removed along with the sheet.

Checked

  • pnpm build and pnpm test in apps/web pass (23 files, 260 tests).
  • Every product screen screenshotted at 360 and 390px with no horizontal overflow, plus 320, 430, 600, 768 and 1280px, the in-app view (?native=1), and the drawer's open, switch, Escape and navigate behaviour. All of this ran against a local API with the lifecycle sample data.

🤖 Generated with Claude Code

https://claude.ai/code/session_017hXxn83KKsFoA4NiW26jSi

On phone widths the header showed an empty white search bar, a logo
circle that read as a loading spinner, and the page description squeezed
into a narrow column. It now uses one slim row: menu, page title, then
search, account and notifications as 40px icon buttons. Home keeps its
greeting on a second line. The full-width search row only appears where
its label is visible (701 to 850px).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017hXxn83KKsFoA4NiW26jSi
@vercel

vercel Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
commune-web Error Error Oct 7, 2026 3:35am UTC

@EmotiveImpact EmotiveImpact self-assigned this Oct 7, 2026

Copy link
Copy Markdown
Owner Author

The Vercel preview for commune-web shows Error on 1533e48. I don't think this PR caused it, though I can't confirm that without the logs:

So this looks like a problem in the Vercel project or account (for example a limit or a settings change), not in the code. The build logs need a Vercel login, which I don't have. I'll fix it here if the deployment shows something in this diff.


Generated by Claude Code

- The menu button now opens the sidebar as a drawer from the left, with
  the commune switcher and account, instead of a bottom "More" sheet.
  Escape closes the commune list first, then the drawer.
- Home's "Needs you" list (also /inbox) keeps its layout; the commune
  label only shows when items come from more than one commune.
- Hub: the "View all" links stack, and the member avatars no longer
  overlap their initials.
- Expenses: the status chips get their own row up to 850px instead of
  hiding behind the filter. Amounts no longer wrap mid-number.
- Settle shows "due 5 Oct" rather than "due 2026-10-05".
- Notes filter is full width on phones.
- Every text field is 16px on phones so iOS Safari stops zooming in on
  focus.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017hXxn83KKsFoA4NiW26jSi
@EmotiveImpact EmotiveImpact changed the title Tidy the web app's top bar on phones Fix the web app's phone layout: top bar, menu and broken lists Oct 7, 2026
In basic navigation mode the sidebar has no Members or Templates link,
and the old phone sheet was the only other route to them.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017hXxn83KKsFoA4NiW26jSi
EmotiveImpact pushed a commit that referenced this pull request Oct 11, 2026
The phone top bar is now one slim navy row: the menu, the page's name,
then search, notifications and you as plain icons. On Home it carries
no name and runs into the navy band under the sentence; when all
square it sits over the photo until the page scrolls.

The menu button opens the sidebar as a drawer from the left (from
PR #22), with Members and Templates added in basic mode. It replaces
the bottom More sheet; the page behind is inert while it is open and
focus returns to the menu button when it closes.

The four tabs use the sidebar's icons with the current one in a pill.
Needs you shows its first two on a phone with Show more, and when all
square the communes come before recent activity, as drawn.

Also from PR #22: the full-width search row only at 701 to 850px,
list toolbars wrap their chips onto their own row, phone text fields
are 16px, and the Hub's avatars and View links no longer overlap.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PxTvnaAvCxprncxCVPRh7u

Copy link
Copy Markdown
Owner Author

Closing without merging: the phone top bar and side menu from this PR were carried into #38, which is now merged into main.


Generated by Claude Code

This branch had an error being deployed

1 failed deployment
Preview — 78670b13 Deployed Oct 7, 2026 by vercel[bot]
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