# Patchtree — pretty diffs & code review

> Turn any raw .diff / .patch page into a full code-review UI: tree-sitter syntax highlighting, a searchable file tree, inline & side-by-side views, and inline review — comments, suggestions, approvals — for GitLab and GitHub.

Canonical page: [https://chrome-stats.com/d/patchtree?hl=ko](https://chrome-stats.com/d/patchtree?hl=ko)

## Overview

- **ID:** `patchtree`
- **Platform:** Firefox
- **Type:** Firefox add-on
- **Status:** Available
- **Publisher:** danilrwx
- **Category:** web-development
- **Daily users:** 1
- **Weekly downloads:** 1
- **Version:** 1.3.0
- **Last updated:** 2026-08-06
- **First published:** 2026-07-28
- **Size:** 19 MB
- **Data as of:** 2026-09-07
- **Store listing:** [Firefox Add-ons Store](https://addons.mozilla.org/firefox/addon/patchtree/)

## Description

patchtree renders plain-text .diff / .patch pages as a fast, full-featured code-review interface — the kind you get on a merge/pull request, but on the raw diff itself, on any host.

Open a diff URL such as <code>https://gitlab.example.com/group/project/-/merge_requests/104.diff</code> (or click the toolbar icon on any MR/PR page) and review right there. It also renders local <code>.diff</code> / <code>.patch</code> files opened via <code>file://</code>.

<strong>Diff rendering</strong>
<ul><li>Any plain-text <code>.diff</code> / <code>.patch</code> page, whatever served it — git-format or a plain <code>diff -u</code>, GitLab, GitHub, or a local file.</li><li>Inline and side-by-side views; fully added or deleted files use the full width in split mode.</li><li>Real syntax highlighting via tree-sitter (WebAssembly, run off the main thread): Go, JS/TS/TSX, Python, Bash, JSON, YAML, Rust, C, C++, Java, Ruby, PHP, C#, Lua, TOML, HCL/Terraform, CSS, HTML, and Helm/Go templates.</li><li>Word-level diff: the exact words that changed get a stronger tint.</li><li>Expand hidden lines between hunks, or a Full-file toggle per file.</li><li>Large diffs stay smooth — only visible file sections are rendered.</li></ul>
<strong>Navigation</strong>
<ul><li>Resizable, filterable file tree (filter matches paths and diff content), status icons and colors (added / modified / renamed / deleted), per-file <code>+N −M</code> and comment-count badges.</li><li>Filter by file extension; hide viewed or deleted files.</li><li>Viewed checkboxes with an N/M progress counter; auto-collapse of generated files (lock files, vendored, minified, <code>*.pb.go</code>, …).</li><li>Follows the file you're on and remembers your place across reloads.</li><li>Keyboard: <code>j</code>/<code>k</code> files, <code>n</code>/<code>p</code> threads, <code>v</code> viewed, <code>x</code> fold, <code>e</code> toggle tree, <code>/</code> focus filter.</li><li>Per-commit diff filter; copy-path, open-at-head, and line permalinks.</li></ul>
<strong>Review</strong> (with an access token)
<ul><li>Threads anchored to lines (old or new side), replies, edit and delete.</li><li>Markdown editor with a toolbar and Write/Preview tabs, rendered through the platform's own API.</li><li>Suggestions: one click prefills a suggestion block; existing suggestions render as a red/green widget with Apply (GitLab).</li><li>Multiline comments (shift-click a line number to extend the range).</li><li>Resolve / unresolve threads and an "unresolved" jump list (GitLab).</li><li>Draft reviews and a Submit-review panel: Comment / Approve / Request changes, with the approval state shown as a badge.</li><li>Pipeline/checks status and a merge-conflict indicator in the toolbar.</li></ul>
<strong>Appearance</strong>
<ul><li>Theme gallery with the base24 schemes from tinted-theming, live code previews (including how added/removed lines look), light/dark filter, and paste-your-own scheme YAML.</li><li>Bundled fonts (JetBrains Mono, Inter, and Nerd Font builds), or any local font by name; separate UI/code font sizes, tab width, italic-comment and ligature toggles.</li></ul>
<strong>Setup</strong>
<ul><li>Firefox MV3 treats host access as opt-in — enable <em>Access your data for all websites</em> (or grant specific hosts) in the add-on's Permissions tab, or the content script won't run.</li><li>To render local files, allow the add-on access to <code>file://</code> URLs.</li><li>Rendering needs no account. To turn on review actions, open the ⚙ menu → Access tokens and add a GitLab host (PAT scope <code>api</code>) and/or a GitHub token (classic <code>repo</code>, or fine-grained with Pull requests read &amp; write).</li></ul>
<strong>Privacy</strong>

patchtree talks only to the diff's own host and its API (GitLab/GitHub) to render diffs and post your review actions. Access tokens are stored locally (<code>storage.local</code>) and never synced or sent anywhere else. No analytics, no tracking, no third-party servers.

Open source (Apache-2.0): <a href="https://prod.outgoing.prod.webservices.mozgcp.net/v1/5bb366193c1af8383a798a104a729fc9a8633eb6732b72a390e416773f239486/https%3A//github.com/danilrwx/patchtree" rel="nofollow">github.com/danilrwx/patchtree</a>

## Rankings

- #100,957 — Overall
- #175 — review

## Permissions and access

### Permissions

- `storage`
- `activeTab`

### Host permissions

- `https://api.github.com/*`
- `https://github.com/*`
- `https://raw.githubusercontent.com/*`
- `https://patch-diff.githubusercontent.com/*`

### Content script matches

- `*`
- ``

## Safety

- **Risk impact:** High risk impact
- **Risk likelihood:** High risk likelihood

### Analysis details

- Allows access to all websites, posing a significant security risk as it can monitor and modify data from any visited site.
- This extension has low user count. Unpopular extensions may not be stable or safe.

> Some risk analysis details are omitted from this free response. [Upgrade to view the full analysis](https://chrome-stats.com/pricing).

## Similar extensions and apps

- [FFDiff](https://chrome-stats.com/d/ffdiff) — 8 users, 5.00 / 5
- [GitSniper](https://chrome-stats.com/d/gitsniper) — 2 users
- [GitHub Diff Explorer](https://chrome-stats.com/d/github-diff-explorer) — 2 users, 5.00 / 5
- [diffs.dev](https://chrome-stats.com/d/patch-roulette) — 32 users, 5.00 / 5
- [MergEase](https://chrome-stats.com/d/mergease) — 7 users, 5.00 / 5
- [Mighty GitHub PRs](https://chrome-stats.com/d/mighty-github-prs) — 1 users, 5.00 / 5
- [Refined Bitbucket](https://chrome-stats.com/d/refined-bitbucket-) — 93 users, 4.74 / 5
- [Patch Viewer](https://chrome-stats.com/d/patch-viewer) — 2 users
- [GitHub CR Toolbox](https://chrome-stats.com/d/github-cr-toolbox)
- [PR Sidebar](https://chrome-stats.com/d/pr-sidebar) — 1 users, 5.00 / 5
- [GitHub Collapse-Diffs Button](https://chrome-stats.com/d/github-collapse-diffs-button) — 1 users, 5.00 / 5
- [Toggle GitHub Details](https://chrome-stats.com/d/toggle-github-details)

---

Source: [Chrome-Stats](https://chrome-stats.com/d/patchtree?hl=ko)
