Working on many pull requests at once can quickly become a really tedious task. You need to navigate to the repositories, manually setup your search filter, wait for the list to reload, which takes way too much time in my opinion.

As a developper, I’m personally convinced that my time is precious enough not to be wasted on this. Yours is too.

This is why I created OctoLenses, a Chrome and Firefox extension allowing you to quickly setup GitHub search filters and nicely display their results.

You can search for both pull requests and issues, using any of the GitHub API search predicates.

Here are a few examples of what you can search for:

Your PRs in a specific repository/organization.

Your PRs for which someone has requested changes.

Issues with a specific label applied. For example, use the “Good First Issue” label to find opportunities to contribute to an open-source project.

Filter you PRs according to their label, automatically applied as part of the Botify review process.

Creating a filter

OctoLenses filter creation modal

The filter creation modal aims to be as simple as possible.

It gives you the choice between multiple predicates, which can then be composed to express all your needs.

They more or less map 1:1 with Github API search predicates, so feel free to open an issue or submit a PR if one was ever missing.

Viewing your data

OctoLenses displaying a list of issues

Once you have created a few filters, you can then navigate between them and view what are the matching issues or pull requests.

It looks really close the GitHub UI so it feels really natural to use.

Bonus feature: Discovering cool things

This month’s trendiest JavaScript repositories

OctoLenses started as a little challenge: clone the GitHunt extension. It’s an extension that allows you to discover trending repositories, and that I liked very much at the time.

It turns out that OctoLenses is now much more than this, but the feature remained. So it can also act as a way for you to discover new technologies/libraries to play with!

Conclusion

I’m now satisfied with the current state of OctoLenses, as it’s good enough for my use case. If however you found that it lacked of a certain feature, please file in an issue, or even better, submit a PR!