Skip to content

Browser app: a sidebar with every construct, and a Home page with the whole Roll - #70

Merged
jimhoyd merged 1 commit into
mainfrom
claude/project-thread-jmqo6l
Oct 8, 2026
Merged

jimhoyd merged 1 commit into
mainfrom
claude/project-thread-jmqo6l

Conversation

@jimhoyd

@jimhoyd jimhoyd commented Oct 8, 2026

Copy link
Copy Markdown
Collaborator

Requested by Jimmy · project thread

What this changes

Before: the local browser app opened on the event timeline. Its header showed only Timeline, Notes and Upcoming; Records, Ledger, Inventory, Contacts, Organizations, Places, Issues, Series, Files, Topics and Deleted sat behind a More button, so the app read as an event log.

After: a shadcn-style sidebar lists every page, grouped (Knowledge, People & places, Money & things, Organize), with open to-dos, open issues and each collection's record count, plus saved searches. The app opens on a new Home page: pinned items, the next two weeks (dates and reminders), open to-dos you can tick off, latest events, open issues, and tiles for notes, every collection, the ledger (this month's total) and files. A New menu writes an event, note, to-do or record from any page, and #/records now lists every collection with a form to start a record. On a phone the sidebar opens in a sheet from the menu button.

Why

Jimmy: the local web UI "only has events, it needs to support all constructs", cleaned up with shadcn. The pages already existed (gitroll#55, #62, #63, #65) but were hard to find.

How: new AppSidebar, HomePage, RecordsIndex, and shadcn Card/Sheet primitives built on the Radix packages already bundled (no new dependencies). Notes, to-dos and files are now read on every page so the sidebar can count them. The timeline moved from #/ to #/timeline; old #/?q= links still open it, and a store without views (no notes) opens straight on the timeline.

How it was tested

  • typecheck, full npm test with Chromium (411 pass, 0 fail), build, @gitroll/core build
  • Tests added or updated for every behavior change: browser tests now go through the sidebar instead of More; the axe WCAG 2.1 AA check covers Home, Records, the New menu and the phone sidebar in light and dark
  • Walked through a demo Roll at desktop and phone widths
  • gitroll-web type-checks and builds against this branch unchanged

Anything a reviewer should look at closely

  • GitRoll.com embeds this App; it pins GITROLL_REF, so nothing changes there until that's bumped. Its thin bar sits above the sticky sidebar, which is fine but worth a look on bump.
  • gitroll#69 edits the old header (pending indicator, offline banner). Whichever merges second needs a small merge: the pending indicator belongs in the sidebar header next to the sync light.

🤖 Generated with Claude Code

https://claude.ai/code/session_01UuSFMzkqJdTwY2URBf2fhC


Generated by Claude Code

… whole Roll

The browser app had pages for notes, records, upcoming, ledger, inventory,
contacts, organizations, places, issues and files, but only Timeline, Notes
and Upcoming were in the header; the rest sat behind More, so the app read as
an event log. Now a shadcn-style sidebar lists every page with counts, the app
opens on a Home overview of every construct, New writes an event, note, to-do
or record from anywhere, and #/records lists collections.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UuSFMzkqJdTwY2URBf2fhC
@jimhoyd jimhoyd self-assigned this Oct 8, 2026
@jimhoyd
jimhoyd merged commit e5de969 into main Oct 8, 2026
13 checks passed
@jimhoyd
jimhoyd deleted the claude/project-thread-jmqo6l branch October 8, 2026 14:09
@jimhoyd jimhoyd mentioned this pull request Oct 8, 2026
3 tasks done
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