Browser extension that simplifies the GitHub interface and adds useful features
We use GitHub a lot and notice many annoyances we'd like to fix. So here be dragons.
Our hope is that GitHub will notice and implement some of these much needed improvements. So if you like any of these improvements, please email GitHub support about doing it.
GitHub Enterprise is also supported. More info in the options.
- Product Hunt submission (2017-07-08)
- What's new lately (2017-06-23)
- Original announcement (2016-03-31)
The Chrome version also works in Opera (using this) and Edge.
Makes whitespace characters visible |
Adds one-click merge conflict fixers |
---|---|
Adds reaction avatars showing who reacted to a comment |
Adds the option to wait for checks when merging a PR |
Linkifies issue/PR references and URLs in code |
Adds button to revert all the changes to a file in a PR |
- 🔥 Adds a build/CI status icon next to the repo’s name.
- Hides the
Projects
tab from repositories and profiles when it’s empty.- New projects can still be created via the
Create new…
menu.
- New projects can still be created via the
- Hides forks and watchers counters.
- Changes the default sort order of milestones
Closest due date
. - Adds useful links to the repository navigation dropdown and moves the "Security" and "Insights" tabs to it as well.
- Adds a keyboard shortcut to star/unstar the current repo: g s.
- 🔥 Adds a link to the default branch on directory listings and files.
- Adds a link to swap branches in the branch compare view.
- Adds a shortcut to your forks next to the
Fork
button on the current repo. - Displays the age of the repository in the sidebar.
- In your forked repos, shows number of your open PRs to the original repo.
- Adds a link to access the past runs of a GitHub Action workflow when seeing the workflow configuration file.
- Clone a branch from the branches list.
- Points the “Forked from user/repository” link to current folder or file in the upstream repository.
- Replaces the labels of some simple buttons on repository filelists with icons, making them take less space.
- Automatically disables projects and wikis when creating a repository.
- Makes conversation sidebars and repository sidebars sticky, if they fit the viewport.
- Adds a link to visit the user’s github.io website from its repo.
- Shows the next scheduled time of relevant GitHub Actions in the workflows sidebar.
- Lets you delete your forks in a click, if they have no stars, issues, or PRs.
- Adds a button to download entire folders, via https://download-directory.github.io.
- Adds a button to toggle the repo file list.
- Adds a button to edit files from the repo file list.
- Ensures that the “Edit readme” button always appears (even when you have to make a fork) and works (GitHub’s link does’t work on git tags).
- Enables the File Finder keyboard shortcut (t) on Issues and Pull Request pages as well.
- Lets you start typing your search immediately after invoking the File Finder (t), instead of having you wait for it to load first.
- Preserves the search terms when navigating back and forth between the File Finder and the files.
- Shows the associated pull requests on branches for forked repositories.
- Enhances the y hotkey to also copy the permalink.
- Adds a button to view the source of Markdown files.
- Adds a button to copy a file’s content.
- Linkifies symbolic links files.
- Shows PRs that touch the current file.
- Reduces tabs’ size to 4 spaces instead of 8.
- Adds a keyboard shortcut to deselect the current line: esc.
- Adds a link to preview HTML files.
- Shows Markdown front matter as vertical table.
- 🔥 Enables tab and shift tab for indentation in comment fields.
- Adds a button to submit a single PR comment if you mistakenly started a new review.
- Adds a button to insert collapsible content (via
<details>
). - 🔥 Auto-resizes comment fields to fit their content and no longer show scroll bars.
- Lets you edit any comment with one click instead of having to open a dropdown.
- Adds a shortcut to edit your last comment: ↑. (Only works in the following comment field, if it’s empty.)
- Wraps selected text when pressing one of Markdown symbols instead of replacing it:
[
`
'
"
*
~
_
- Reduces the upload bar to a small button.
- Hides unnecessary comment field tooltips and toolbar items (each one has a keyboard shortcut.)
- Uses a monospace font for all textareas.
- Adds a button to
@mention
a user in conversations. - Adds a button in the text editor to quickly insert a simplified HTML table.
- Notifies the user of unfinished comments in hidden tabs.
- Embeds linked gists.
- Adds links to browse the repository and linked files at the time of each comment.
- Adds the real name of users by their usernames.
- Shortens URLs and repo URLs to readable references like "_user/repo/.file@
d71718d
". - 🔥 Previews hidden comments inline.
- 🔥 Highlights the most useful comment in conversations.)
- Hides reaction comments ("+1", "👍", …) (except the maintainers’) but they can still be shown.
- Limits the height of tall code blocks and quotes.
- Simplifies the UI to hide comments.
- Makes the "comment" icon in issue lists link to the latest comment of the issue.
- On long conversations where GitHub hides comments under a "Load more...", alt-clicking it will load up to 200 comments at once instead of 60.
- Adds shortcuts to conversations and PR file lists: j focuses the comment/file below; k focuses the comment/file above.
- 🔥 Lets you open multiple conversations at once via checkboxes.
- Separates issues from PRs in the global search.
- Makes the conversation list’s filters toolbar sticky.
- Highlights conversations opened by you or the current repo’s collaborators.
- Aligns labels in lists to the left.
- 🔥 Changes the default sort order of conversations to
Recently updated
. - Adds
Everything commented by you
andEverything you subscribed to
filters in the search box dropdown. - Adds filters for conversations in your repos and commented on by you in the global conversation search.
- 🔥 Hides empty sections (or just their "empty" label) in the conversation sidebar.
- Hides
Projects
andMilestones
filters in conversation lists if they are empty. - Allows the ↑ and ↓ keys to cycle "popover lists" (labels, milestones, etc).
- Adds a shortcut to toggle all similar items (minimized comments, deferred diffs, etc) at once: alt click on each button or checkbox.
- Lets you toggle between is:open/is:closed/is:merged filters in searches.
- Adds a "Bugs" tab to repos, if there are any open issues with the "bug" label.
- Adds the updated time to pinned issues.
- Changes the layout of pinned issues from side-by-side to a standard list.
- Adds one-click buttons to remove labels in conversations.
- Removes duplicate information in conversation headers.
- Dims commits and PRs by bots to reduce noise.
- Adds a shortcut to cancel editing a conversation title: esc.
- Adds a link to the non-PR commit when visiting a PR commit.
- Adds Checks and Draft PR dropdown filters in PR lists.
- Shows color-coded review counts in PR lists.
- Shows the base branch in PR lists if it’s not the default branch.
- Hides inactive deployments in PRs.
- Adds duplicate commit navigation buttons at the bottom of the
Commits
tab page. - Preserves the "ignore whitespace" setting when navigating with Next/Previous in PR review mode.
- Bypasses the "Checks" interstitial when clicking the "Details" links on a PR Checks added by third-party services like Travis.
- Opens the Checks "details" link in a new tab.
- Adds comment indicators when comments are hidden in PR review.
- Shows which PRs have conflicts in PR lists.
- Adds diff stats on PR commits.
- Adds a line-through to the deleted branches in PRs.
- Mark/unmark multiple files as “Viewed” in the PR Files tab. Click on the first checkbox you want to mark/unmark and then
shift
-click another one; all the files between the two checkboxes will be marked/unmarked as “Viewed”. - 🔥 Shows the first Git tag a merged PR was included in.
- Jumps to first non-viewed file in a pull request when clicking on the progress bar.
- Adds copy-pastable git commands to checkout a PR.
- Adds a link to jump to the latest changed requested comment.
- 🔥 Uses the PR’s title as the default squash commit title and updates the PR’s title to the match the commit title, if changed.
- Adds button to update a PR from the base branch to ensure it builds correctly before merging the PR itself. GitHub only adds it when the base branch is "protected".
- Simplifies the PR review form: Approve or reject reviews faster with one-click review-type buttons.
- Warns you when creating a pull request from the default branch, as it’s an anti-pattern.
- Warns you when unchecking
Allow edits from maintainers
, as it’s maintainer-hostile. - Adds keyboard shortcuts to cycle through PR tabs: g ← and g →, or g 1, g 2, g 3 and g 4.
- Automatically deletes the branch right after merging a PR, if possible.
- Lets you create draft pull requests in one click.
- Clears the PR merge commit message of clutter, leaving only deduplicated co-authors.
- Adds a review button to the PR sidebar, autofocuses the review textarea and adds a keyboard shortcut to open the review popup: v.
- Uses the first commit for a new PR’s title and description.
- Adds links to
.patch
and.diff
files in commits. - Adds a link to view the raw version of files in PRs and commits.
- Adds one-click buttons to change diff style and to ignore the whitespace and a keyboard shortcut to ignore the whitespace: d w.
- 🔥 Enhances files’ commit lists navigation to follow file renames.
- Adds links to the file itself in a file’s commit list.
- Widens the
Expand diff
button to be clickable across the screen. - Hides diff signs since diffs are color coded already.
- Suggests limiting commit titles to 72 characters.
- Expands the entire file when you alt-click on any "Expand code" button in diffs.
- Displays the corresponding tags next to commits.
- Marks merge commits in commit lists.
- When exploring blames,
Alt
-clicking the “Reblame” buttons will extract the associated PR’s commits first, instead of treating the commit a single change. - Indicates with an icon whether files in commits and pull requests being added or removed.
- Adds a download count next to release assets.
- Adds a
Releases
tab and a keyboard shortcut: g r. - Adds a keyboard shortcut to create a new release while on the Releases page: c.
- Adds a tags dropdown/search on tag/release pages.
- 🔥 Adds a link to an automatic changelog for each tag/release.
- Adds a link to the latest version tag on directory listings and files.
- Adds a button to convert a release to draft.
- On profiles, it shows whether the user follows you.
- Adds a link to the user’s public gists on their profile.
- Marks private organizations on your own profile.
- Adds a keyboard shortcut to visit your own profile: g m.
- Adds a link to the user’s most starred repositories.
- Hides forks and archived repos from profiles (but they can still be shown).
- Linkifies the user location in their hovercard and profile page.
- Shows the user local time in their hovercard (based on their last commit).
- Adds a link to the issues and pulls on the user profile repository tab and global search.
- 🔥 Condenses the events to take up less space and uncollapses "User starred X repos" groups.
- Hides "starred" events for your own repos on the newsfeed.
- Hides other inutile newsfeed events (commits, forks, new followers).
- Automagically expands the newsfeed when you scroll down.
- 🔥 Adds possible related pages and alternatives on 404 pages.
- Adds a keyboard shortcut to open selection in new tab when navigating via j and k: shift o.
- Automatically closes dropdown menus when they’re no longer visible.
- Moves the "Marketplace" link from the black header bar to the profile dropdown.
- Renders
`text in backticks`
in issue titles, commit titles and more places. - Makes issue/PR references in issue/PR titles clickable and renders
`text in backticks`
. - Adds a
Trending
link to the global navbar and a keyboard shortcut: g t. - Adds shortcuts to navigate through pages with pagination: ← and →.
- Adds button to open all your unread notifications at once.
- Lets you see how others are using the current Action in the Marketplace.
- Shows all of Refined GitHub’s new keyboard shortcuts in the help modal (? hotkey).
- Stops redirecting to notification inbox from notification bar actions while holding Alt.
- Hides the
Packages
tab if it’s empty (in repositories and user profiles).
- Removes the file hover effect in the repo file browser.
- Hides the placeholder text in repos without a description.
- Corrects the width of the first
tab
in file diffs since it appears 2 columns shorter than it should be. - Hides the milestone sorter UI if you don’t have permission to use it.
- Linkifies branch references in "Quick PR" pages.
- Removes the autocomplete on search fields.
- Removes tooltips from self-explanatory buttons.
- Adds a menu item to embed a gist via
<iframe>
. - Preserves the current line on “View blame prior to this change” links.
- Points the "View file" on compare view pages to the branch instead of the commit, so the Edit/Delete buttons will be enabled on the "View file" page, if needed.
- Makes labels clickable on the dashboard.
- Retries downloading images that failed downloading due to GitHub limited proxying.
- Makes some dropdowns 1-click instead of unnecessarily 2-click.
- Linkifies the header of each notification group (when grouped by repository).
- Suggests fixing your PR Commit links before commenting. GitHub has a bug that causes these link to appear as plain commit links, without association to the PR.
- Aligns the repository header to the repository content on wide screens.
- Linkifies the username in the edit history popup.
- Avoids creating duplicate PRs when mistakenly clicking "Create pull request" more than once.
- After you click on an ajaxed link, this lets you stop loading a page by pressing the esc key, like the browser does for regular page loads.
- Avoids re-loading the page when jumping to function definition in the current file.
- Linkify the readme text on profile pages.
- Moves the "Convert PR to Draft" button to the mergeability box and adds visual feedback to its confirm button.
- 🔥 Allows multiline selections on split diffs.
GitHub implemented dozens of features that used to be part of Refined GitHub 🎉
See list
- Blog post: Blame parent commits in blame view.
- Blog post: Collapse/expand files in a PR diff.
- Blog post: Preview a issue/PR reference’s title in comments.
- Blog post: The dashboard organization switcher is moved to the right column.
- Blog post: Quickly edit a repository’s README from the repository root.
- Blog post: Access
Your repositories
from the profile dropdown. - Blog post: Permalinked comments are highlighted.
- Blog post: Leave a single comment in pull request diffs instead of starting a review by pressing shift enter.
- Blog post: Quickly delete a file from pull requests.
- Blog post: Pressing
Cancel
on an inline comment opens a prompt to prevent accidental cancelling. - Blog post: The
+
and-
signs in diffs are made unselectable for easier copy-pasting. - Blog post: Toggle all outdated PR comments or PR/commit files with alt click.
- Blog post: Avoid opening duplicate issues thanks to the list of possibly-related issues.
- Blog post: Copy the path of a PR file.
- Blog post: Search a user profile page when visiting it.
- Blog post: Access the
Labels
Milestones
navigation from individual milestone pages. - Blog post: The comments of who opened an issue/PR are marked with
Original Poster
label. - Blog post: Quickly delete a forked repo after its pull request has been merged.
- Blog post: Exclude PR/issue filters from their list with alt click.
- Blog post: File headers are always visible.
- Blog Post: Linkify branch names in pull requets.
- Blog post: Adds link to an issue’s closing commit or pull request. 1 2
- Blog post: Adds
co-authored-by
to the commit when merging PRs with multiple committers. - Blog post: Makes it easier to tell apart commits added to the current PR versus plain commits that reference the PR.
- Blog post: Widens the discussion search box.
Most features can be disabled if they are JavaScript-based (Experimental) and you can override our CSS with your own in the extension options.
We're happy to receive suggestions and contributions, but be aware this is a highly opinionated project. There's a high bar for adding features. Users will always disagree with something. That being said, we're open to discussing things.
Read the contribution guide and join the contributors!
- Awesome browser extensions for GitHub - Awesome list
- OctoLinker - Navigate across files and packages
- Notifier for GitHub - Shows your notification unread count
- Mottie's Userscripts - Countless features to improve GitHub granularly
- Contributors on GitHub - Shows stats about contributors
- Hide Files on GitHub - Hides dotfiles from the file browser
- GitHub Issue Link Status - Colorize issue and PR links to see their status (open, closed, merged)
- OctoEdit - Markdown syntax highlighting in comments
- Notifications Preview for GitHub - See your notifications on hover on all pages
- Show All GitHub Issues - Shows both Issues and Pull Requests in the Issues tab
- Refined Twitter - Improves Twitter
- Friendly GitHub - Make GitHub more social
- Sourcegraph - Code search and navigation tool
- PR Monitor - Notifies you about incoming and outgoing PRs