Awesome
<img src="icons/enhanced-github128.png" align="center"> Enhanced GitHub
<br/>Browser extension that adds useful features on GitHub website
<a href="https://www.producthunt.com/posts/github-plus?utm_source=badge-featured&utm_medium=badge&utm_souce=badge-github-plus" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=72611&theme=dark" alt="github-plus - Chrome Extension to display file size, download & copy link | Product Hunt Embed" style="width: 250px; height: 54px;" width="250px" height="54px" /></a>
Supported Browsers
<img alt="Chrome" src="https://img.icons8.com/fluent/24/000000/chrome.png" align="center"/> Install extension from Chrome Web Store
<img alt="Firefox" src="screenshots/firefox.png" align="center"/> Install add-on from Firefox Add-ons
<img alt="Microsoft Edge" src="https://img.icons8.com/fluent/24/000000/ms-edge-new.png" align="center"/> Install extension from Microsoft Edge Add-ons
Website
Features
- Displays repo size.
- Displays each file size for every active branch (not applicable for folder / symlink).
- Show download link for each file (not applicable for folder / symlink).
- Copy file's contents directly to Clipboard (just won't work for markdown files).
- Download file while viewing its contents.
The extension handles the SPA behavior of GitHub website from v3.0.0
onwards :)
Note: For private repos(Issue #6), GitHub Access Token is required. Follow the steps mentioned below to add your GitHub Access Token.
Permissions required
"*://*.github.com/*"
- for running ongithub.com
domain.storage
- for storing GitHub access token on your local system. GitHub Access token is required for private repos and for handling API rate-limiting issues.webRequest
- to support GitHub being a single-page-application now. Read this detailed blog.webNavigation
- to support GitHub being a single-page-application now. Read this detailed blog.
Author
Varun Malhotra <a href="https://varunmalhotra.xyz"><img align="center" alt="Varun Malhotra Website" src="https://img.icons8.com/material/24/000000/domain--v1.png"/></a> <a href="https://twitter.com/s0ftvar"><img align="center" alt="𝕏" src="https://img.icons8.com/ios-glyphs/24/twitterx--v2.png"/></a> <a href="https://stackoverflow.com/users/2494535/softvar"><img align="center" alt="StackOverflow" src="https://img.icons8.com/color/24/000000/stackoverflow.png" /></a> <a href="https://www.linkedin.com/in/softvar/"><img align="center" alt="LinkedIn" src="https://img.icons8.com/color/24/000000/linkedin.png" /></a> <a href="https://github.com/softvar"><img align="center" alt="GitHub" src="https://img.icons8.com/fluent/24/000000/github.png"/></a>
GitHub API Rate Limiting
Since this extension fetches data using GitHub public v3 API for showing file size and download_url, it consumes free quota which is very less GitHub API Rate Limiting.
To tackle this, create a new GitHub Access Token.
-
If logged-in, visit https://github.com/settings/tokens
-
Generate a new token, select
repo
scope and create a one. -
Copy and store the generated token which looks something like:
17c1a8d5b399d66b6212382d98d4c67a94d58955
(a fake one :P). -
Click on extension icon and then on
Settings-Options
on top right. <img src="screenshots/extension-popup-screenshot.png" width="380" />OR
Right-click on enhanced-github extension and click on
<img src="screenshots/2024-redesigned-options.png" width="380" />Options
in the dropdown menu. -
Enter the valid GitHub Access Token
-
Click on
SAVE
and Enjoy the benefits.
This browser extension will automatically pick this valid access token and Bingo!
Screenshots
2024 - Updated GitHub UI
Screenshot of each file size and it's download link
<img src="screenshots/2024-enhanced-github-new-design.png">New GitHub Design - Blog
Screenshot of each file size and it's download link
<img src="screenshots/github-repo-home-new.png">Screenshot of Copy file contents and download link
<img src="screenshots/github-file-new.png">Old GitHub Design
Screenshot of each file size and it's download link
<img src="screenshots/github-repo-home.png">Screenshot of Copy fle contents and download link
<img src="screenshots/github-file.png">Libraries Used
- Thanks to @zenorocha for Clipboard.js - Modern copy to clipboard. No Flash. Just 3kb gzipped.
Development
- Clone this repo
- Run
yarn dev
for generating packaged folder specifically for extension stuff. - Go to extension page. For chrome extensions chrome://extensions, Firefox Add-ons about:debugging, and Microsoft Edge Extensions edge://extensions/.
- Enable developer mode
- Click on load unpacked extension and select the generated folder.
- [Admin Access Only] - run
yarn build
for generating zip file to be uploaded on Chrome Web Store, Firefox Add-ons, and Microsoft Edge Addons.
PRs are most welcome :)
Changelog
Contributors
Author: Varun Malhotra(@softvar)
Code Contributors
This project exists thanks to all the people who contribute. [Contribute]. <a href="https://github.com/softvar/enhanced-github/graphs/contributors"><img src="https://opencollective.com/enhanced-github/contributors.svg?width=890&button=false" /></a>
Financial Contributors
Become a financial contributor and help us sustain our community. [Contribute]
Individuals
<a href="https://opencollective.com/enhanced-github"><img src="https://opencollective.com/enhanced-github/individuals.svg?width=890"></a>
Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
<a href="https://opencollective.com/enhanced-github/organization/0/website"><img src="https://opencollective.com/enhanced-github/organization/0/avatar.svg"></a>
Policy
Refer Privacy Policy.
Enhanced GitHub Extension doesn't collect/share/care about your data at all.
Asks for GitHub Access Token for private repos and if Rate Limiting is your concern.
Copyright and License
❗️ This extension is not sponsored by, endorsed by, or an official project of GitHub. This is a personal project and is developed solely for providing additional functionalities on GitHub website.
<!-- Links -->The MIT license (MIT)
Copyright (c) 2016-2024 Varun Malhotra
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.