Skip to content

Hub as "the house at a glance", with the same ideas on Home and the phone app - #42

Draft
EmotiveImpact wants to merge 7 commits into
mainfrom
claude/project-thread-h5d44a
Draft

EmotiveImpact wants to merge 7 commits into
mainfrom
claude/project-thread-h5d44a

Conversation

@EmotiveImpact

@EmotiveImpact EmotiveImpact commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Requested by Edem · project thread

What changes

Web Hub (direction B, "the house at a glance")

  • Pulse on the photo: one line such as "2 late and 2 bills due this week."
  • Your part: one money sentence with the overall position, and one next step (pay, or "Confirm £20.00 received" / "Not received"). Links to settlement and to items waiting on others.
  • This week: late column plus seven days. Tasks tick off with Undo (and the existing "who did it" choice), events show inline, bills open the expense.
  • People: each member's balance and next job.
  • Shared essentials: pinned notes show their facts in place; passwords and codes stay hidden behind Show, with Copy and Call where it fits.

Web Home

  • The money line says where you stand in each currency. Currencies are never added together.
  • Each commune card has a one-line pulse (late chores, overdue bills).
  • Today: chores due now, ticked from Home, with Undo on the toast.
  • Still to pay lists your shares; Confirm received moves into Waiting on others.
  • Recent activity shows the amount beside the time.

Pay first (web and phone app)

The main button pays, rather than reporting a payment:

  • Payee has a favourite way: "Pay £5.90 with Monzo" opens it with the amount filled in, beside "Other ways (n)" and "Already paid".
  • Links but no favourite: "Pay Tom £5.90" opens a sheet of every way they take money, plus "I've already paid, tell Tom".
  • No links: "I've paid Tom £5.90" stays, with a line saying they haven't said how they like to be paid.
  • Coming back from the bank app asks "Did £5.90 go to Tom?": "Yes, tell Tom" reports the full share for today with the app's name as the reference; "Paid a different amount" opens the form; "Not yet" closes. It asks only after the page or app was actually left.
  • Rows on Home and Settle show "Pay" and "Already paid" when the payee has links.
  • Settings: "Make favourite" (web) or a star (phone) on each saved way.

Commune still moves no money.

Database: a favourite way to be paid (migration 0043)

  • member_pay_links.preferred, at most one per person (unique partial index).
  • set_preferred_pay_link(p_provider): definer function for authenticated users; null or empty clears it, a way you haven't added is refused.
  • pay_links_for returns preferred and lists the favourite first.
  • Local API PUT /api/pay-links-preferred; the Neon client maps it to the RPC. schema.sql regenerated; pay_links and grants SQL tests extended.

Phone app (apps/native)

  • Hub rebuilt with the same sections: your part, this week, people, essentials (Show/Hide, Copy, Call).
  • Home: standing clause on the money line, Today with tick and Undo, Still to pay, inline Confirm on waiting rows, tile pulse.
  • Pay first as above: src/ui/pay.tsx, sheets app/pay/[shareId] and app/paid/[shareId], and a return watcher in app/_layout.tsx.
  • Toasts can carry an Undo button (44pt, stays 6s). Activity feed includes pending payment reports.

Checks

  • apps/web: 71 test files, 702 tests pass; typecheck and build pass.
  • apps/native: typecheck clean, 18 tests pass, Expo web export builds.
  • Database: pay_links and grants pass on a disposable PostgreSQL 16; dump-schema.sh --check clean.
  • Clicked through in Chromium on a disposable local database (web) and demo data (phone).

Nothing deploys or migrates on merge. Releasing this needs migration 0043 on Neon after 0042.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WR3jnRWPbGzGV9Uyrqq8Wg

The Hub now leads with a one-line pulse on the photo, your part in the
commune with one next step (I've paid, or confirm received), a seven-day
week strip with tasks, events and bills you can tick, people with their
balance and next job, and shared essentials with facts in place and
secrets behind Show and Copy. The owe line now ends with the overall
position so Home and Hub tell one money story.

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

vercel Bot commented Oct 22, 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 23, 2026 8:57am UTC

@EmotiveImpact EmotiveImpact self-assigned this Oct 22, 2026

Copy link
Copy Markdown
Owner Author

The red "Vercel" status on this PR is not caused by this change. The commune4/commune-web preview deployment has failed the same way on earlier PRs (for example #41, which merged with the same failure), while the same code builds cleanly in a separate Vercel project and pnpm run build passes locally. It points to a Vercel project or Neon integration setting on commune4, which this PR does not touch and I have no access to. The GitHub Actions checks (Web app; Database, local API and worker; Secret scan) are what verify this change.


Generated by Claude Code

Hub now leads with this week's pulse on the photo, your part with one
"I've paid" (or confirm received), the week day by day with tasks you
can tick and undo, people with their balance and next job, and shared
essentials with facts in place, secrets behind Show and Copy, and Call.

Home keeps its approved layout and adds where you stand overall, how the
bill payer takes money, a pulse on each commune tile, Today and Still to
pay in place of one mixed list, Confirm on the row when someone says
they've paid, and amounts in the feed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WR3jnRWPbGzGV9Uyrqq8Wg
- The money line says where you stand in each currency.
- The next step shows how the person you owe takes payment.
- Each commune card has a one-line pulse (late chores, overdue bills).
- Today: chores due now, ticked from Home, with Undo on the toast.
- Still to pay lists your shares; Confirm received moves into Waiting on others.
- Recent activity shows the amount beside the time.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WR3jnRWPbGzGV9Uyrqq8Wg
@EmotiveImpact EmotiveImpact changed the title Hub: the house at a glance (direction B) Hub as "the house at a glance", with the same ideas on Home and the phone app Oct 23, 2026
Each way someone takes payment is now a button beside what you owe them:
Monzo and PayPal open with the amount filled in, Revolut opens the profile,
and Bank transfer opens "I've paid" with the details to copy. Opening any of
them also opens "I've paid", so the payment is recorded when you come back.
Commune still moves no money.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WR3jnRWPbGzGV9Uyrqq8Wg
On phones the Home sentence ("You owe £78.90 in Elm Road.") eases its size
down to stay on one line, never below 22px; longer sentences wrap as before.
Pay pills sit on one row that slides sideways, running to the card's edge so
a cut-off pill shows there is more, with a fade while anything is hidden.

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

- Migration 0043 (local only): a person may mark one pay link as their
  favourite (set_preferred_pay_link); it is listed first. Settings offers
  "Make favourite". schema.sql regenerated; pay_links and grants tests cover it.
- The next step on Home and the Hub, by what the person you owe has saved:
  a favourite opens it in one tap ("Pay £5.90 with Monzo") with "Other ways"
  and "Already paid" beside it; ways but no favourite show "Pay Tom £5.90",
  which opens a sheet of every way with "I've already paid, tell Tom"; no
  ways keep "I've paid Tom £5.90" and say why.
- Coming back after opening their app asks "Did £5.90 go to Tom?": yes
  records the whole amount as sent today with the app as the reference; a
  different amount opens the full form; not yet changes nothing.
- Still to pay rows and Settle offer Pay and Already paid when the payee has
  pay links. The sliding pill row is replaced by the sheet.

Commune still moves no money.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WR3jnRWPbGzGV9Uyrqq8Wg
The phone app gets the same pay flow as the web. With a favourite pay link the
main button opens it with the amount filled in, beside Other ways and Already
paid; with links but no favourite, Pay opens a sheet of every way plus
I've already paid; with none, I've paid stays, with a line saying they haven't
said how they like to be paid. Coming back from the bank app asks whether the
money went. Settings gets a star to pick your favourite.

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

This branch had an error being deployed

1 failed deployment
Preview — 24fc537b Deployed Oct 23, 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