Skip to content

feat(diffshub): persist display preferences#853

Open
NathanDrake2406 wants to merge 2 commits into
pierrecomputer:mainfrom
NathanDrake2406:diffshub-display-preferences
Open

feat(diffshub): persist display preferences#853
NathanDrake2406 wants to merge 2 commits into
pierrecomputer:mainfrom
NathanDrake2406:diffshub-display-preferences

Conversation

@NathanDrake2406

@NathanDrake2406 NathanDrake2406 commented Jun 19, 2026

Copy link
Copy Markdown

Overview

Persist DiffsHub display settings locally so repeat review sessions keep the viewer preferences a user selected last time.

This includes diff layout, wrapping, line numbers, backgrounds, indicator style, and collapsed/expanded file state. Mobile still uses unified view when needed without changing the user's saved desktop layout preference.

Validation

  • AGENT=1 bun test apps/diffshub/lib/test/displayPreferences.test.ts apps/diffshub/lib/test/reviewDisplayPreferences.test.tsx
  • AGENT=1 ./node_modules/.bin/moon run diffshub:typecheck
  • AGENT=1 ./node_modules/.bin/moon run diffshub:test
  • AGENT=1 ./node_modules/.bin/moon run diffshub:build

Closes #851.

DiffsHub display controls previously reset between visits, so repeat review sessions had to reapply the same view, wrap, line-number, background, indicator, and collapse preferences.

The display state lived only in ReviewUI component state. This stores a versioned, locally validated preference payload, reuses the existing browser storage boundary for theme persistence, and hydrates the viewer only after preferences are loaded.

Closes pierrecomputer#851.
@vercel

vercel Bot commented Jun 19, 2026

Copy link
Copy Markdown

@NathanDrake2406 is attempting to deploy a commit to the Pierre Computer Company Team on Vercel.

A member of the Team first needs to authorize it.

@NathanDrake2406 NathanDrake2406 marked this pull request as ready for review June 19, 2026 08:39
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.

Persist DiffsHub display preferences

1 participant