ghui - curses TUI for Github
[ghui] is a terminal interface for browsing GitHub issues and pull requests.
I built it because I usually use [elinks] and Github inexplicably doesn't work at all on text browsers. I find the Github interface very slow and clunky. If you like things like `mutt`, `newsboat`, etc, this is for you. It's also completely shamelessly YOLO vibe AI slop.
But it works. And I use it. I don't even know if this is free software or not. I just said what I wanted and kept on pressing enter and here it is.
Does it secretly do crazy stuff in the background? I read enough of the code to convince myself that it does actually do what it advertises and nothing more, but don't hold me to it.
A screenshot of ghui issue list
A screenshot of ghui viewing an issue with comments
A screenshot of ghui PR showing a diff with syntax highlighting
Features
- Single Python file with no deps apart from `gh` and `pygments` (syntax highlighting). Go figure.
- Lists issues and pull requests with colored state indicators, author, labels, and relative timestamps
- Paginated browsing (100 per page) with `n`/`N` to move between pages
- Filter by state (open, closed, merged, all) and search using GitHub's full query syntax
- Sort by updated, created, or comment count
- View issue and PR detail with body and full comment thread
- Render markdown: headers, bold, inline code, and fenced code blocks with pygments syntax highlighting
- Write comments by drafting in `$EDITOR`, then reviewing the thread before confirming
- View PR diffs with colored +/- lines
- Merge PRs with a choice of merge, rebase, or squash
- Reopen and close issues and PRs
- Open anything in the browser with `B`
- Jump directly to an issue or PR number with `#`
- Caching for fast loads
ghui is not:
- A full Github interface. It only implements the things I care about.