rename the service to diff.sr.ht The instance-facing name changes and nothing else does: the config.ini section, the origin, the apk package, the nginx block and the systemd unit are all diff.sr.ht now, and the brand's red service label reads "diff" because chrome derives it from the section name. What deliberately stays is everything whose rename would cost more than it is worth: the Go module path, the repository name, the comparesrht binary, and the /~owner/repo/compare/base...head routes people have in their history. README says so at the top so the split is not read as an oversight.
web: add long-line wrapping toggle
web: tighten diff and file-tree spacing Address three spacing complaints in the compare view: - File tree: switch @pierre/trees to the "compact" density preset (24px rows, 0.8 factor) so folder/child rows read as a dense index rather than an airy list. - Diff blocks: drop the inter-file gap (.diff-file margin-bottom 1rem -> .5rem) and the tree/diff column gap (1rem -> .75rem). - File tree height: size the mount to its content height (capped at the viewport) instead of always filling the viewport, removing the band of empty tree background below the last file. Re-measures on resize and on every tree change (expand/collapse) via tree.subscribe. Rebuilt and re-hashed the embedded bundle and stylesheet.
web: full-width split diff view with a rendered file tree Make the commit and compare pages full-bleed and default to the side-by-side (split) diff, so the layout matches a conventional diff viewer: file tree on the left, split diff on the right. - layout.html renders the content wrapper with a per-page ContainerClass; chrome() defaults it to "container" and the commit/compare handlers set "container-fluid" for the diff views (the nav stays centered). - app.ts defaults DEFAULT_LAYOUT to "split". - Fix the @pierre/trees sidebar rendering blank: its virtualized container collapses to zero height unless the mount has a definite height, so sizeTreeRoot() gives #tree-root a viewport-height panel (re-applied on resize). Rebuilt the vendored bundle.
frontend: pierre diffs/trees bundle and sourcehut theme css Vendored esbuild bundle (frontend/src/app.ts) rendering @pierre/diffs FileDiff per file and a @pierre/trees FileTree sidebar against the SSR #compare-data contract, plus scss/main.scss (base + compare views) compiled and content-hashed into web/static/.