Skip to content

utkarsh261/pho

Repository files navigation

image

A TUI for GitHub pull requests.

image

Features

  • Dashboard - Auto-discovers repos, lists PRs across My PRs, Needs Review, Involving, and Recent tabs with a live preview pane.
  • Jump to repo/PR - Ctrl+P to fuzzy-find and jump to any PR.
  • PR detail - Browse description, diff, comments, and commits. Sidebar for files and CI checks.
  • Diff navigation - Line-by-line cursor, gg/G, Ctrl+d/Ctrl+u, visual mode for selecting ranges.
  • Inline reviews - Draft inline comments on diff lines, edit, discard, and batch-submit with a review event. Just like Github web UI.
  • Comments & approvals - Post top-level comments, review comments, or approve directly.
  • PR actions - Edit title/body, merge (with method selection), close/reopen, and checkout the branch locally.
  • Commit view - Inspect individual commits and their diffs.
  • Search - / to search within diffs and descriptions; n/N to jump between matches.

Install

go install github.com/utkarsh261/pho/cmd/pho@latest

Binary lands in $(go env GOPATH)/bin/pho.

Or pin a specific version:

go install github.com/utkarsh261/pho/cmd/pho@v0.1.0

Add it to the $PATH:

echo 'export PATH="$(go env GOPATH)/bin:$PATH"' >> ~/.zshrc

Usage

Right now, pho looks at only the cwd and its direct children directories (if they are actually git repos). So if you have some repositories cloned in a directory, you can either open pho in that directory or:

$(go env GOPATH)/bin/pho ~/path/to/dir/containing/all/cloned/repositories

or simply start it in the current directory

pho

Requirements

Build

go build -o pho ./cmd/pho

With just:

just build

Run

./pho

Flags:

Flag Description
--version Print version and exit
--debug Enable debug logging
--reset Clear all caches and exit
--config <path> Path to config file
--root <dir> Root directory to scan for git repos (default .)

Test

go test ./...

With just:

just test

Vet

go vet ./...

With just:

just vet

Logs

tail -f ~/.local/state/pho/debug.log

Why

So that i can build it exactly how i want a tool which i use on a regular basis to be.

About

TUI for Github Pull Requests

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages