Skip to main content

ReviewStack

ReviewStack (reviewstack.dev) is a novel user interface for GitHub pull requests with custom support for stacked changes. The user experience is inspired by Meta's internal code review tool, but leverages GitHub's design system to achieve a look and feel that is familiar to GitHub users:

To try it out, take the URL for an existing pull request on github.com and change the domain to reviewstack.dev, so:

bolinfest/monaco-tm#39 on GitHub is available at
https://reviewstack.dev/bolinfest/monaco-tm/pull/39 on ReviewStack.

Specifically, ReviewStack recognizes stacks created by sl pr submit, sl ghstack, or stacks created from a Git repo using standalone ghstack. When it sees that your pull request is part of such a stack, it provides a dropdown for navigating the commits in the stack. This encourages discussing and approving each change independently while allowing the author to add new commits to the top of the stack without interfering with the existing conversation around the commits on the bottom of the stack.

caution

Today, ReviewStack is focused on motivating the conversation about how an ideal stacked changes workflow should work. It is admittedly not as fully-featured or battle-tested (particularly for large pull requests) as GitHub's pull request UI. For these reasons, a pull request in ReviewStack links back to the equivalent page on GitHub so you can quickly make use of any GitHub functionality that is missing on ReviewStack.

Keyboard shortcuts

ReviewStack supports the following keyboard shortcuts:

keyaction
shift+Nnext PR in stack
shift+Pprevious PR in stack
ctrl+. (cmd+. on macOS)toggle timeline view
alt+Aselect Approve Changes action
alt+Rselect Request Changes action
alt+Cselect Comment action