If you do any work in open source, you probably live for GitHub. With all the time you spend using it, you can improve your experience by leveraging a variety of browser extensions.
The following is a rundown of my favorite GitHub extensions on my preferred browser, Google Chrome. While I am focusing on Chrome extensions, you'll find that there are plenty of GitHub extensions for other browsers, too.
Do you prefer a GitHub extension not listed here? Let me know in the comments!
This extension supercharges the top GitHub search bar by adding auto-completion, last active users, top public repositories, and more.
You can even type
aa<space> to find GitHub repositories directly from your Chrome address bar!
The default file icons in GitHub are so, so boring. Are you tired of seeing the default notepad icon next to every file, no matter the extension?
The File Icon for GitHub, GitLab and Gitbucket extension, by Homer Chen, adds file icons to GitHub repositories. Personally, this makes it easier for me to find certain files in folders with many files.
Any reasonable code editor gives you the ability to easily expand or collapse code blocks for readability. The GitHub Code Folding extension, by Noam Lustiger, allows you to do this inside the GitHub user interface.
The extension lists the size for an entire GitHub repository and also the size of each file.
The Hide Files on GitHub extension, by Sindre Sorhus, hides nonessential project files and folders from the GitHub user interface (like Yarn lock files, the .git folder, and so on). Of course, you can customize which files to ignore.
The Isometric Contributions extension, by Jason Long, shows an isometric pixel art version of a user's contribution chart. It also includes more granular user data, like a user's busiest day, current streak, and longest streak.
Of course, you can easily switch between the isometric view and the default view. This extension does not have certain functionality like hovering over a day for details.
(The screenshot grabbed from the extension's repository.)
I cannot do without the Octotree extension. This extension offers an easy-to-navigate code tree, allowing for lightning-fast browsing of a repository's files.
The Refined GitHub extension, by Sindre Sorhus, offers a slew of features that is missing from GitHub. If you look at the repository, you'll see that GitHub has integrated functionality that was first developed in this extension.
Some functionality includes the ability to mark issues and pull requests as unread, reaction avatars on comments, clickable references to issues and pull requests, and links to an issue's closing commit or pull request.
Where do you stand on the tabs vs. spaces argument? You can only pick one. (In an effort to keep all my readers, I will abstain from this one.)
When I discover a GitHub repository, I like to find out information about the author—generally this includes following the person on Twitter, which is often the best place to contact someone or and learn about them. If the author does not include their Twitter handle in his or her GitHub bio, it can be tedious and time-consuming to search on Twitter.
If you want to clone a GitHub repository, the most common (and documented) way is to browse to it and click that green Clone or download button. In this case, I am cloning the .NET machine learning project:
Typically, I would copy the Git repository path and clone it in a command line window, like so:
git clone https://github.com/dotnet/machinelearning.git
As it turns out, this is a waste of clicks. All you have to do is grab the URL from the address bar of your favorite browser and ignore the
.git extension altogether.