14 KiB
Refined GitHub
Browser extension that simplifies the GitHub interface and adds useful features
Discuss it on Product Hunt 🦄
We use GitHub a lot and notice many dumb 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 by authorizing your own domain in the options.
Install
- Chrome extension
- Firefox add-on
- Opera - Use this Opera extension to install the Chrome version.
Highlights
Dashboard cleanup |
---|
Mark issues and pull requests as unread (They will reappear in Notifications) |
Preserves the original Markdown when you copy text from comments |
---|---|
Reaction avatars | Moves destructive buttons in commenting forms away from the primary button |
---|---|
Linkifies issue/PR references in code, comments and titles | |
---|---|
New Features
- Copy canonical link to file when the y hotkey is used
- Supports indenting with the tab key in textareas like the comment box (Shift Tab for original behavior)
- Uses the pull request title as commit title when merging with 'Squash and merge'
More actions
- Linkifies branch references in pull requests
- Adds a quick edit button and a link to the latest release to the readme
- Adds a shortcut to quickly delete a forked repo
- Adds a button to open all notifications at once
- Adds option to view diffs without whitespace changes (d w hotkey)
- Adds a 'Copy' button to the file view
- Adds
Copy
button to gist files - Adds
Copy
button for file paths to pull request diffs - Adds links to patch and diff for each commit
- Adds links to view the repo at the time of each comment
More info at a glance
- Makes file headers sticky underneath the pull request header
- Shows user's full name in comments
- Differentiates merge commits from regular commits
- Adds labels to comments by the original poster
- Adds build status and link to CI by the repo's title
Declutter
- Hides other users starring/forking your repos from the news feed (optional)
- Moves the dashboard organization switcher to the right column
- Removes annoying hover effect in the repo file browser
- Removes the comment box toolbar
- Removes tooltips
- Removes the "Projects" repo tab when there are no projects (New projects can be created on the "Settings" tab)
UI improvements
- Improves readability of tab indented code
- Aligns labels to the left in Issues and PRs lists
- Prompts you when pressing
Cancel
on an inline comment in case it was a mistake - Easier copy-pasting from diffs by making +/- signs unselectable
- Automagically expands the news feed when you scroll down
- Shows the reactions popover on hover instead of click
- Changes the default sort order of milestones to "Closest due date"
More shortcuts
- Adds a 'Releases' tab to repos (g r hotkey)
- Adds a 'Compare' tab to repos
- Adds navigation to milestone pages
- Adds search filter for 'Everything commented by you'
- Adds
Yours
button to Issues/Pull Requests page - Condenses long URLs into references like user/repo/.file@
d71718d
- Adds a
Trending
link to the global navbar. (g t hotkey) - Adds a keyboard shortcut to leave a single comment in PR diffs instead of starting a review. (shift+enter)
- Adds a keyboard shortcut to visit your profile. (g m hotkey)
Previously part of Refined GitHub
Adds blame links for parent commits in blame viewImplemented by GitHubAdds ability to collapse/expand files in a pull request diffImplemented by GitHubAdds issue/PR title preview tooltip in commentsImplemented by GitHub
Community tweaks
Stuff that didn't get included, but might be useful.
Customization
We're happy to receive suggestions and contributions, but be aware this is a highly opinionated project. There's a single commonly-requested option but we're not interested in adding more as it's a slippery slope into adding one for everything. Users will always disagree with something. That being said, we're open to discussing things.
While this project is highly opinionated, this doesn't necessarily limit you from manually disabling functionality that is not useful for your workflow. Options include:
-
(CSS Only) Use a Chrome extension that allows injecting custom styles into sites, based on a URL pattern. Stylist is one such tool. Example
-
Clone the repository, make the adjustments you need, and load the unpacked extension in Chrome, rather than installing from the Chrome Store.
Contribute
Suggestions and pull requests are highly encouraged!
In order to make modifications to the extension you'd need to run it locally. Please follow the steps below:
git clone git@github.com:sindresorhus/refined-github
cd refined-github
npm install # Install dev dependencies
npm run build # Build the extension code so it's ready for the browser
npm run watch # Listen for file changes and automatically rebuild
Once built, load it in the browser of your choice:
Chrome | Firefox |
---|---|
|
|
Related
- Refined Wikipedia - Like this, but for Wikipedia
- Notifier for GitHub - Shows your notification unread count
- Hide Files on GitHub - Hides dotfiles from the file browser
- Show All GitHub Issues - Shows both Issues and Pull Requests in the Issues tab
- Contributors on GitHub - Shows stats about contributors
- Twitter for GitHub - Shows a user's Twitter handle on their profile page
- GifHub - Quickly insert GIFs in comments
- Octo Linker - Navigate across files and packages
- Awesome browser extensions for GitHub - Awesome list
- OctoEdit - Markdown syntax highlighting in comments
- GitHub Clean Feed - Group news feed events by repo
- Do Not Merge WIP for GitHub - Prevents merging of incomplete PRs
- GitHub Custom Tab Size - Set custom tab size for code views (Refined GitHub hard-codes it to 4)
Want more? Here are some ideas you could develop!
- Notification Previews for GitHub
- Format JS code blocks with Prettier
- Customize the font of code blocks
Created by
- Sindre Sorhus
- Haralan Dobrev
- Paul Molluzzo
- Andrew Levine
- Kees Kluskens
- Jonas Gierer
- Federico Brigante
- Scott Busche
- Contributors…
License
MIT