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.
- Latest changes (Updated regularly. Subscribe!)
- Product Hunt submission (2017-07-08)
- What's new lately (2017-06-23)
- Original announcement (2016-03-31)
- Chrome extension
- Firefox add-on
- Opera extension: Use this Opera extension to install the Chrome version.
Adds button to mark issues and PRs as unread (They will reappear in Notifications) |
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 link to an issue’s closing commit or pull request |
---|---|
- 🔥 Adds a build/CI status icon next to the repo’s name.
- Adds a download count next to release assets.
- Removes the file hover effect in the repo file browser.
- Hides the placeholder text in repos without a description.
- 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 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 links to
Commits
,Branches
,Dependencies
, andCompare
in a newMore
dropdown. - Adds a keyboard shortcut to star/unstar the current repo: g s.
- Adds a tags dropdown/search on tag/release pages.
- 🔥 Adds a link to an automatic changelog for each tag/release.
- Adds a button to a download button entire folders. Uses download-directory.github.io
- Adds a button to toggle the repo file list.
- Adds a button to edit files from the repo file list.
- Adds an Edit button on previewed Readmes in folders, even if you have to make a fork.
- 🔥 Adds links to the default branch and to the latest version tag.
- Adds link to swap branches in the branch compare view.
- Linkifies branch references in "Quick PR" pages.
- Hides the
Packages
tab in repositories if it’s empty. - Retries downloading images that failed downloading due to GitHub limited proxying.
- Adds a shortcut to your forks next to the
Fork
button on the current repo. - Adds the age of the repository to the statistics bar.
- 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.
- 🔥 Shows whitespace characters.
- 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.
- 🔥 Enables the tab key 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.
- Moves the
Edit comment
button out of the...
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.)
- Use a monospace font for all textareas.
- 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 issues.
- 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.
- Links the comments icon to the latest comment.
- Adds ability to minimize comments of certain users.
- 🔥 Adds a button to open multiple discussions at once in your repos.
- Separates issues from PRs in the global search.
- Makes the discussion sidebar sticky.
- Makes the discussion list’s filters toolbar sticky.
- Highlights discussions opened by you or the current repo’s collaborators.
- Aligns labels in lists to the left.
- 🔥 Changes the default sort order of discussions to
Recently updated
. - Widens the discussion search box.
- Adds a
Everything commented by you
filter in the search box dropdown. - Adds filters for discussions in your repos and commented on by you in the global discussion search.
- 🔥 Hides empty sections (or just their "empty" label) in the discussion sidebar.
- Hides
Projects
andMilestones
filters in discussion 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.
- Adds a button to
@mention
a user in discussions.
- Adds link to non-PR commit when visiting a PR commit.
- Adds
Build status
and draft PR dropdown filters in PR lists. - Shows color-coded review counts in PR lists.
- Shows head and base branches in PR lists if they’re significant.
- Hides the
Checks
tab if it’s empty, unless you’re the owner. - Hides inactive deployments.
- 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.
- 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.
- 🔥 Uses the PR’s title and description when merging and updates the PR’s title to the match the commit title, if changed.
- Adds
co-authored-by
to the commit when merging PRs with multiple committers. - 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.
- 🔥 Adds button to revert all the changes to a file in a PR.
- Lets you create draft pull requests in one click.
- Adds a keyboard shortcut to ignore the whitespace in diffs: d w.
- Adds links to
.patch
and.diff
files in commits. - Renders the rich diff by default in SVG files’ diffs.
- Adds 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.
- 🔥 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.)
- Limits the commit title fields 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.
- Shows the followers you have in common.
- Tells you whether the user follows you.
- Adds a link to the user’s public gists.
- 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).
- 🔥 Condenses the events to take up less space and uncollapses "User starred X repos" groups.
- Hides "starred" events for your own repos.
- Hides other inutile 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 and commit titles. - Adds a
Trending
link to the global navbar and a keyboard shortcut: g t. - Adds shortcuts to navigate through pages with pagination: ← and →.
- Open all your notifications at once.
- Shows all of Refined GitHub’s new keyboard shortcuts in the help modal. (? hotkey)
- 🔥 Indents wrapped code correctly.
- Always focuses confirm buttons in custom modal boxes, like "Mark all as read".
- Hides the milestone sorter UI if you don’t have permission to use it.
- Removes the autocomplete on search fields.
- Removes tooltips from self-explanatory buttons.
- 🔥 Moves the "Recently-pushed branches" widget to the header to avoid content jumps. Also adds it to more pages in the repo.
- Makes it easier to tell apart commits added to the current PR versus plain commits that reference the PR.
- 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" in PRs 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 in the dashboard’s "Recent activity" box.
GitHub implemented 20 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.
Most features can be disabled if they are JavaScript-based (Experimental) and you can override the 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 very high bar for adding options. Users will always disagree with something. That being said, we're open to discussing things. If something doesn't make the cut, you can build your customized Refined GitHub locally, rather than installing it from the Chrome Store.
See the contribution guide and join the contributors!
- Awesome browser extensions for GitHub - Awesome list
- Octo Linker - 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)
- Twitter for GitHub - Shows a user's Twitter handle on their profile page
- OctoEdit - Markdown syntax highlighting in comments
- Notifications Preview for GitHub - See your notifications on hover on all pages
- GitHub Custom Tab Size - Set custom tab size for code views (Refined GitHub hard-codes it to 4)
- 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
Want more? Here are some ideas you could develop!