Shareable UI for stacked diffs on git native platforms.
  • Rust 46.4%
  • JavaScript 39.1%
  • CSS 11.5%
  • HTML 2.4%
  • Dockerfile 0.4%
  • Other 0.2%
Find a file
2026-02-17 05:06:46 +00:00
src Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
web Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
.gitattributes README update and stuff 2026-02-12 10:48:54 -08:00
.gitignore README update and stuff 2026-02-12 10:48:54 -08:00
Cargo.lock Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
Cargo.toml Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
docker-compose.yml Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
Dockerfile Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
LICENSE README update and stuff 2026-02-12 10:48:54 -08:00
Makefile Rebrand to StackAbout 2026-02-16 20:41:11 -08:00
README.md Rebrand to StackAbout 2026-02-16 20:41:11 -08:00

StackAbout

Shareable UI for viewing stacked PRs with incremental diffs. Built for jujutsu workflows on GitHub and Forgejo.

When you push a stack of jujutsu bookmarks, each PR shows all cumulative changes from the base branch. StackAbout shows only what's new in each PR by comparing against the previous bookmark in the stack.

Note — Please see the Contributions and Source section before contributing.

Building

Requires Rust 1.85+.

cargo build            # debug build
cargo build --release  # optimized release build

Cross-compile for Raspberry Pi:

cargo install cross
cross build --release --target aarch64-unknown-linux-musl

Running

cargo run

Starts on http://localhost:3333 by default.

Options

Flag Env Default Description
-p, --port STACKABOUT_PORT 3333 Listen port
--host STACKABOUT_HOST 0.0.0.0 Bind address
--cache-ttl STACKABOUT_CACHE_TTL 300 Cache TTL in seconds
--web-dir STACKABOUT_WEB_DIR web Static files directory

Usage

  1. Open the UI in a browser
  2. Select forge (GitHub or Forgejo)
  3. Enter repository as owner/repo
  4. Enter PR numbers bottom-to-top: 1, 2, 3
  5. Optionally provide a token (see below)

Share the resulting URL with others -- the token is never included in the link.

Token Scopes

A token is optional for viewing public repositories. To use review features (approve, request changes, comment, edit description), a token with write permissions is required.

GitHub

Create a Personal Access Token with the repo scope (or public_repo for public repos only).

Forgejo

Create a token in Settings > Applications with these scopes:

  • repository:write -- PR reviews, inline comments, description editing
  • issue:write -- PR-level discussion comments (Forgejo treats PR comments as issue comments internally)

Contributions and Source

The true source repository for StackAbout is located at git.kgroo.co/patman/StackAbout. GitHub is used for public access, distribution, and issues. We ask that you please visit and authenticate with your GitHub account and aim to open PRs there. (P.S. you will still get credit on your GH graph as long as you push with the same email)

The use of Generative AI for contributions is allowed, but please audit any code before opening a PR and ensure that any tests pass.

License

MIT