Repository Browser
Browse repository files, view blame and commit history, switch branches, search files with Cmd+K, filter code reviews by author and reviewer, and compare files across repositories and branches — all without leaving the code review platform.
Repository Home Page Free
Every repository has a home page (/repositories/:id) with three stat cards at the top:
| Card | What it shows |
|---|---|
| Open Reviews | Count of open code reviews, with total review count on the right |
| Members | Number of repository members; clicking Manage opens the Members page |
| Last Commit | Message (truncated), SHA (first 8 chars), and relative time of the most recent commit across all reviews |
Webhook Setup
Below the stat cards is a collapsible Webhook Setup section. Click the row to expand it. It shows the exact webhook URL, secret, and trigger event for the repository's Git platform (GitLab, GitHub, Gitea, Forgejo, Bitbucket, etc.). Collapsed by default so it doesn't clutter the page once the webhook is configured.
Recent Reviews
The lower part of the home page lists the last 10 code reviews with status badge, title, author, commit count, and assigned reviewer badges. A link in the top right corner opens the full All Reviews page.
Navigation Tabs Free
Every repository sub-page displays a shared header at the top with:
- The repository's source-platform icon and name (clicking the name navigates to the repository home page)
- The repository's Git path in monospace text
- A horizontal tab bar with the available sections
| Tab | URL | Description |
|---|---|---|
| README | /repositories/:id/readme | Rendered README from HEAD |
| Browse | /repositories/:id/browse/:ref | File tree at branch or commit |
| Branches | /repositories/:id/branches | All branches with default/protected badges |
| Analytics | /repositories/:id/analytics | Commit activity, CR stats, treemap, file history, reviewer graph, hotspots, tech debt |
| Members | /repositories/:id/members | Repository member list and role management |
| Metrics | /repositories/:id/metrics | Cycle time, median/p90, reviewer response time |
| Edit | /repositories/:id/edit | Edit repository settings (admins only) |
| All Reviews | /repositories/:id/reviews | All reviews with filters (right-aligned) |
The active tab is underlined in blue. The tab bar is identical in position and appearance across all pages — switching sections never shifts the layout.
File Browser Free
Navigate to the Browse tab to explore the file tree at the currently selected branch. Click any directory to expand it; click a file to view its syntax-highlighted content.
File view features
- Syntax highlighting — 30+ languages coloured server-side with Rouge; honours light/dark theme
- Line anchors — each line number is an anchor (
#L42); click to copy a permalink, share with a colleague to highlight a specific line - Ctrl+click / Cmd+click — jump to a symbol's exact declaration; Alt+click opens Find Usages. See Find Usages & Go to Declaration below.
URL patterns
| URL | Shows |
|---|---|
/repositories/:id/browse/:ref | Root file tree at :ref (branch name or commit SHA) |
/repositories/:id/browse/:ref/*path | Directory tree or file content at :path |
/repositories/:id/blame/:ref/*path | Line-by-line blame view |
/repositories/:id/history/:ref/*path | Commit history for the file |
Branch Switcher Free
A branch switcher dropdown appears in the breadcrumb bar of every browse view (tree, file, blame, history). It shows the current branch name. Clicking it opens a searchable list of all branches fetched from the Git platform.
- Selecting a branch navigates to the same path on the new branch
- The file tree and Cmd+K search always reflect the selected branch — files that do not exist on a branch are not shown
- Commit SHAs are also accepted as refs; paste a full or short SHA to navigate to a specific revision
Blame View Free
Click Blame on any file view to see per-line commit attribution. Each line shows the author name, commit SHA (first 8 chars), commit message (truncated), and relative time.
File History Free
Click History on any file view to see the last 30 commits that touched that file. Each entry shows:
- Commit SHA (links to the diff view for that commit)
- Commit message
- Author name and relative time
- Browse button — opens the file tree at that exact SHA, letting you time-travel through the repository
Cmd+K File Search Free
Press Cmd+K (macOS) or Ctrl+K (Windows/Linux) anywhere in the browse view to open a fuzzy file search dialog. Start typing to filter the file list. The search is scoped to the currently selected branch — files that don't exist on the branch are excluded.
- Results are ranked by path relevance
- Press Enter or click a result to navigate to the file
- Press Esc to close without navigating
Find Usages & Go to Declaration Standard+
Backed by a tree-sitter symbol index built incrementally on every push (JavaScript, TypeScript/TSX, Ruby, Python, Go, Java, Kotlin, PHP). In any file view:
- Ctrl+click (Cmd+click on Mac) a symbol — opens a popup with its exact declaration(s), plus a "Find Usages" link at the bottom
- Alt+click a symbol — opens the Find Usages panel directly, listing every reference grouped by file
Results navigate to the exact #L{n} line on the target file. The same index also backs Go to Declaration, Find All References, and Go to Symbol in File in the IDE (VS Code, JetBrains, Neovim).
Click Watch in the Find Usages panel header to get notified — via Slack, Teams, Email, or an outgoing webhook (symbol.changed event) — whenever that symbol's signature changes on the repository's default branch. Manage watched symbols from the repository's Watches tab.
Branches List Free
The Branches tab lists all branches fetched from the Git platform. Each row shows:
- Branch name (clicking opens the file tree at that branch)
- default badge for the repository's default branch
- protected badge for branches marked as protected on the Git platform
- Last commit SHA (first 8 chars)
All Reviews & Filters Free
The All Reviews tab (/repositories/:id/reviews) lists all code reviews for the repository with real-time filtering.
Status filter
Four buttons at the top filter by status: All, Open, Approved, Rejected. The active button is highlighted. Changing the status preserves the current author and reviewer selections.
Author and reviewer dropdowns
When the repository has reviews from multiple users, two dropdowns appear:
| Dropdown | Filters by | When shown |
|---|---|---|
| All authors | The user who created the review | When more than one author exists |
| All reviewers | Any assigned reviewer on the review | When more than one reviewer exists |
All three filters (status, author, reviewer) are combinable and preserve each other's state when changed. A ✕ Clear link appears when any filter is active and resets all filters at once.
Compare Files Standard+
Available from the Compare link in the top navigation bar. Compares any two files from any two repositories side by side with syntax highlighting.
How to compare
- Select Repository A (base) from the left dropdown.
- Enter a branch or commit ref for the left side (leave blank to use
HEAD). Accepts branch names, tag names, and full or short commit SHAs. - Enter the file path for the left side (e.g.
app/models/user.rb). Typing in the left path pre-fills the right path. - Select Repository B (changed) from the right dropdown and fill in its ref and path.
- Click Compare →.
Result view
| Case | What you see |
|---|---|
| Files differ | Unified diff with syntax highlighting; a Side by side toggle switches to a two-column layout |
| Files are identical | Both files shown side by side with an info banner — no diff lines |
| File not found | Error message for the side that failed; the other side still renders |
The diff labels show repo@ref — path so you always know exactly what you're comparing.
Example use cases
- Compare a file on
mainvsfeature/new-authbefore merging - Check how a library file changed between two releases (
v1.2.0vsv1.3.0) - Diff the same config file across two different microservice repositories
- Compare a file at a specific commit SHA to find when a regression was introduced