Repository navigation
Home: open on where you stand and the next step (Direction B), with the phone top bar and side menu - #38
Conversation
Home now leads with one sentence of what you owe and are owed, an amount per currency and never added across currencies, then the one next step with the page's only filled button. Your communes follow in order of need, the current one tagged; then Needs you grouped by when, Waiting on others kept calm, and recent activity. With nothing owed or waiting anywhere, the current commune's photo fills the top instead. Paying and confirming act in place through the existing report and confirm dialogs, and read again the commune the share is in, which may not be the open one. Tasks and pledges open their record. On a phone the sentence sits on the navy band with the next step lifted over it, and communes show as tiles. The bar names the page Home once there is a commune; the greeting stays for a member with none. The old featured card, week grid and #home rules are gone from the shared sheets. The all-square photo's shade is measured in tests/cover-contrast.test.ts like the other covers. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PxTvnaAvCxprncxCVPRh7u
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
CI has not run on this PR. On a2f08bb (run 38137616784), 9324031 (run 38156067027), c5860fe (run 38157450190) and 35bbff1 (run 38175595376), all three jobs (Web app; Database, local API and worker; Secret scan) were marked failed within three seconds of being queued, with no runner assigned, no steps and no log. This is the same pattern seen on #34 and #35, so nothing in this PR's code has been tested by CI yet. I couldn't re-run them from here: the rerun request returned 403 each time. Someone with access needs to press "Re-run all jobs" on run 38175595376. If they fail the same way again, check the account's Actions minutes under Settings → Billing and plans. Local results on 35bbff1:
The Vercel preview error is the known project setting issue, not this change. Generated by Claude Code |
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
Coming up lists the next fortnight's turns and regular bills across communes when nothing else needs you; a task nobody holds has "I'll do it", a handover to yourself checked against the task as Home saw it, which reads that task's own commune again. Home's desktop top bar carries Add expense beside the bell (the plus alone beside a tablet sidebar, hidden on a phone). Section heads link to All communes, History and Operations on wider screens; the all-square line names the commune on desktop, and the phone drops the communes count, as drawn. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PxTvnaAvCxprncxCVPRh7u
Each person can save how they like to be paid. People who share a commune with them see these when they owe them, from Settle, an expense or Home's next step: Monzo and PayPal open with the amount filled in, Revolut opens their profile, and bank details can be copied. Commune still never moves money; the payer reports it as before. Saved through SECURITY DEFINER functions in migration 0042 with no direct table grant, and shared only with active members through the full snapshot. Built on the phone layout branch (PR #38). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TFug6Zkjw7p11FxL3guDfE
On a phone, Home's top bar carries no page name, so the "commune." wordmark now sits beside the menu button there, as in the phone prototype. Other pages keep their own name in that place, and wider screens keep the wordmark in the sidebar. The heading still names the page for screen readers, so the wordmark is hidden from them. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PxTvnaAvCxprncxCVPRh7u
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Before: Home opened on one large photo card for the selected commune, smaller cards for the others, then Needs you and Recent activity side by side. Nothing said, in one place, what you owe or are owed, and every action meant opening the record first. On a phone the top bar held a boxed menu button, a logo circle, the title, the account and the bell, with an empty search field on a second row, and the menu button opened a "More" sheet from the bottom.
After: Home opens on one sentence of where you stand ("You owe £93.85 across two communes."), with an amount per currency that is never added across currencies, then the one next step with the page's only filled button ("I’ve paid Sam £16.00"). Your communes follow in order of need with the current one tagged, then Needs you grouped by when (to confirm, overdue, today, this week, later, no date), Waiting on others kept calm (past due in amber, never red), and recent activity. When nothing needs you, Coming up lists the next fortnight's turns and regular bills ("Netflix, £17.99, you pay"), and a task nobody holds has "I’ll do it". When nothing is owed or waiting anywhere, the current commune's photo fills the top as "You’re all square, Maya." Home's desktop top bar has Add expense beside the bell, and section heads link to All communes, History and Operations.
On a phone it now matches the B mock: one slim navy top bar (menu and the "commune." wordmark, then search, notifications and you as plain icons; other pages show their name in place of the wordmark), which on Home runs straight into the navy band under the sentence and, when all square, sits over the photo until the page scrolls. The menu button slides the full sidebar in from the left. The four tabs use the sidebar's icons with the current one in a pill. Needs you shows its first two with "Show more", communes show as tiles, and section heads keep their counts but not their links.
This is Direction B from the design panel of 11 October 2026, which Edem chose for desktop and phone.
How:
HomeScreeninapps/web/src/screens/Home.tsxis rewritten with its own stylesheet,Home.css, in the screens layer; the old featured card, week grid and#homerules are removed fromapp.cssandoverrides.css.LiveHubgains what you owe and are owed in minor units, who owes you, andcoming(fromcomingUpinlive/model.ts: open tasks and active regular bills from today to 13 days on, leaving your own task due today to Needs you). EachNeedcarries its amount, share, person and payment report, so Home can act on it. "I’ve paid" and "Confirm" open the existing report and confirm dialogs; those commands now take the share's commune and read that commune again, since on Home it may not be the open one. "I’ll do it" is the existing handover command to yourself, sent with the date and holder Home saw (so a stale screen is refused), and it too reads that task's own commune again. Tasks and pledges open their record. DM Sans (OFL, Latin, already used for the wordmark) is the display face for the sentence. Lists switch to a two-line row by their own width, so they hold up beside the sidebar on a tablet. Add expense shows as the plus alone (still named) beside a tablet sidebar and is hidden on a phone.The phone shell is ported from PR #22 onto this stack:
Sidebartakes adrawerprop (a modal dialog named "Menu" with a close button, plus Members and Templates in basic mode),MoreSheetrenders it in place of the old More list, the page and tabs behind it are inert while it is open, and focus returns to the menu button when it closes. The logo circle and every.a-morerule are gone; on a phone's Home the wordmark sits beside the menu instead (hidden from screen readers, since the page heading names the page). Also from #22: the full-width search row only at 701 to 850px, list toolbars give their chips their own row, phone text fields are 16px (no iOS zoom), and the Hub's avatars and View links no longer overlap. The phone bar rules live indesign-system.css; hover fills apply only where a pointer can hover.Checked:
pnpm run typecheck, all 675 web tests andpnpm run buildpass, and gitleaks finds nothing. New tests cover the per-currency sentence, the grouped lists and the phone's two-row limit, paying and confirming from Home (including in a commune that is not the open one), the Coming up rule (window, order, wording, paused and archived bills left out), taking a task nobody holds in another commune, the top bar's Add expense and wordmark, the all-square photo's text contrast over a white stand-in, and the drawer (dialog name, inert page, Escape returning focus, choosing a page moving focus to its heading). Screenshots at 1440, 800, 600, 390 and 320, light and dark, in owe, owed and all-square states, with the menu open and on Expenses, Settle, Notes and This Hub, the top bar at 565 to 1024, plus 320 to 1200 for sideways scroll, on a local database.Not in this PR: there is no "since you last looked" tracking yet, so that panel is "Recent activity", and other members' photos are not stored, so faces are initials. PR #22 now duplicates the shell part of this PR.
🤖 Generated with Claude Code
https://claude.ai/code/session_01PxTvnaAvCxprncxCVPRh7u