Repository navigation
v0.1.0
The ghl backend and CLI now run exclusively on Go. React is embedded in the executable; users need only Git and a browser. The initial release target is macOS Apple Silicon (ARM64), distributed through GitHub Releases and mise.
💥 Breaking changes
- Remove the Node backend, CLI and fallback installer. Node and pnpm are only needed for development, frontend builds and test drivers.
✨ Features
- Preserve existing comments, anchors, timestamps and Viewed state directly in each checkout's version-1
.git/ghl/state.json, with a shared transaction lock. - Review unified or split text diffs, expand unchanged context on demand, and preview image changes side by side with click-to-zoom.
- Pick a local base or target branch, review a single commit against its first parent, and control working-tree and untracked changes from the page. Keep comparison choices in the URL so later CLI invocations do not override them.
- Follow
gh stacklayers, including metadata in linked worktrees, and fall back past merged or deleted layers. Use the trunk for branches with no commits of their own, while retaining guessed and remembered bases. - Keep the virtualized tree and diff in the same file order. Fold Viewed files in place, reveal them from the tree, and clear their ticks when their changes move. Render edited files renamed across languages and search the entire diff, including files outside the mounted viewport.
- Write, edit and delete line comments with original code anchors and per-line stale markers. Browse comments outside the current diff in the comments panel, collapse inline cards, and copy individual comments or the full review with code. Export Markdown or JSON through
ghl comments, with code available as soon as a comment is saved. - Add file-name copy buttons, popular dark and light editor themes, keyboard shortcuts and a responsive review layout with a full-width mobile comments panel.
- Reuse a shared local daemon and stable
ghl.localhost:7777repository URLs; newer Go executables replace it while preserving registered repositories.
🐛 Fixes
- Fix search input replacement during delayed opening frames and skip nested untracked Git repositories/worktrees rather than aborting the entire review.
🔧 Internal
- Use native Task, Air and Vite for build, installation and hot reload.
Stop an old Node daemon before starting Go on the same port. Read the migration guide for PATH precedence, backups and rollback, and the installation guide for mise commands. Other platforms and the optional URL without a port remain follow-up work.