Review just about anything

Projects are more than just a collection of source code. With RBCommons, you can review screenshots, documentation, schematics, presentations, contracts, diagrams, and just about anything else, all in one place.

Whether your projects are built by people, AI, or a combination of both, RBCommons can help ensure the end result is a quality product.

Review diffs, images, documents, and more.

One of the pioneers of modern code review

When we started out in 2006, code review mostly meant e-mailing diff files back and forth. We wanted a better way, and began inventing many of the code review features that have since become industry standards.

We built what you know and love today, and are pioneering what you'll use tomorrow.

Review code in any language on almost any source code management system (Git, Subversion, Mercurial, Perforce, and many more) with abilities including:

  • Multi-line commenting
  • Moved code detection
  • Smart indentation-aware line changes
  • Commenting on any line in a file, even outside the diff
  • Tracking the evolution of any change, making it easy to see what's new since your last review.
Screenshot of code being reviewed in the diff viewer

Design with Image and Graphics Review

Game developers, UI/UX developers, and technical writers often have to collaborate on the creation of images, screenshots, and mockups.

Review and diff images directly in RBCommons, including mockups, screenshots, gamedev assets, SVGs, and AI-generated art, with features including:

  • Contextual commenting on regions of images
  • Side-by-side image diffs
  • Color-based image diffs
  • Adjustable transparent image diffs
Screenshot of an image being reviewed

Take review to another level with Document Review

No other code review tool can review documents like RBCommons.

Review and diff Office documents, contracts, technical diagrams, schematics, reports, and anything you can export to PDF, with features including:

  • Contextual commenting on regions of documents or selected text
  • Compatibility with nearly any document type
  • Table of contents and thumbnail-based navigation
  • Side-by side comparisons between document revisions, with changes highlighted
Screenshot of a PDF document being reviewed

Goodbye Pull Requests, hello Review Requests

Review requests collect code changes, screenshots, mockups, documentation, and other files and assets all in one place, and where you'll go to track your task's reviews, discussions, CI build statuses, modifications, and audit trails.

They're more than just a Pull Request.

Screenshot of a review request

Review, discuss, and track issues so nothing gets missed

RBCommons's reviews don't bury important discussions and tasks somewhere in a diff viewer like most pull requests do.

Each review is a self-contained discussion between you, the reviewer, and anyone with something to contribute. All in one place, threaded, and easy to follow.

Comments are shown alongside relevant sections of code, images, or documents, giving you all the context you need to follow along, and can be expanded to see more.

Comments may open an issue, a To Do item that must be addressed before the work is approved. This way, no important task gets missed.

Screenshot of a discussion on a review

Every review request you care about, all in one place

RBCommons's Dashboard gives you a birds-eye-view of everything that matters for your day. Every review request waiting for your review, and every one of your review requests waiting for reviews from others. Featuring:

  • Filtering review requests by groups and projects
  • Helpful visuals for determining review status
  • Several customizable sortable columns to choose from
  • Bulk-closing, archiving, and muting of review requests
Screenshot of the RBCommons dashboard

Command line users will love it!

Our RBTools command line tools can be used to post changes for review, land changes in your tree, test out other users' reviews, check the status of your review requests, and much more.

Its built-in Python API can be used to craft custom solutions, IDE integrations, and automations useful to your team.

  • ~/src/projectgit checkout my-feature
    ~/src/projectrbt post HEAD
    Validating commits...
    Uploading commits...
    Review request #2 posted.
    ~/src/project
  • ~/src/projectgit checkout main
    ~/src/projectrbt land --push my-feature
    Merging branch "my-feature" into "main".
    Review request #2 has landed on "main".
    Pushing branch "main" upstream.
    ~/src/project
  • ~/src/projectcat ~/.reviewboardrc
    ALIASES = {
        'test-patch': (
            '!git clone . /tmp/test-repo-$1 &&'
            'cd /tmp/test-repo-$1 &&'
            'rbt patch $1'
        ),
    }
    ~/src/projectrbt test-patch 123
    Cloning into '/tmp/test-repo-123'...
    Applying 1 patch from review request #123 (diff revision 1)
    /tmp/test-repo-123
  • ~/src/projectrbt status
    +----------+-------------------------------+------------------------+
    |  Status  |         Review Request        |         Branch         |
    +==========+===============================+========================+
    | Ship It! | r/123 - Fix a UI regression   | ui-work/regression-fix |
    +----------+-------------------------------+------------------------+
    | Draft    | r/128 - Redo session handling | sessions/refactor      |
    +----------+-------------------------------+------------------------+
    /tmp/test-repo-123

Connect to all your repositories

Hosted in your network or on

Integrate with the services you're already using

Ready to upgrade your code review?