A chrome extension to remove mental load when working with pull requests. It has been published in the Chrome Web Store to be installed with one click.
There is work in progress for a Firefox port of the extension in the master-firefox branch.
git clone [email protected]:renuo/github-pull-request-counter.git
cd github-pull-request-counter
bin/setup
For people using a macbook with the Apple arm chip:
brew install chromium
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
export PUPPETEER_EXECUTABLE_PATH=`which chromium`
yarn build # develop
yarn build-production # production
- Visit
chrome://extensions/
. - Enable "Developer mode" in the top right corner.
- Click "Load unpacked" in the top left corner.
- Navigate to the root of this repository and select
dist
it.
Note: If you have the extension already installed through the webstore you won't be able to add the development version. Either remove it or create a new chrome profile to get around the issue.
bin/check
bin/fastcheck
Commits on master will automatically try to upload to the chrome web store, though they will be rejected if the version is not greater than the previous one. To make a version bump go to src/manifest.json
and increase version
. Uploaded builds are not automatically published. To accomplish this go to the Chrome Web Store Develop Dashboard.
This is already done for this project.
- Do the steps described under "Add to chrome"
- Click "Pack extension" and then "Remove"
- Chrome made 2 new files in the parent directory of the dist folder. Drag and drop
dist.srx
intochrome://extensions/
and install it. Copy the id displayed underID:
. - Head to the the User Data Directory. For mac:
~/Library/Application\ Support/Google/Chrome
. For other: https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md - From the User Data Directory open
Default/Extensions/_<extensionId>_/_<versionString>_/manifest.json
._<extensionId>_
is equal to the ID gained in step 3._<versionString>_
is just0.0.0
. - Copy the key from
"key:"
and paste it into your manifest.json:"key: <key>"
- When running the tests chromium might ask you: "Do you want to allow the application Chromium.app to accept incoming network connections?". You can remove this by running
sudo codesign --force --deep --sign - ./node_modules/puppeteer/.local-chromium/mac-*/chrome-mac/Chromium.app
. This will create a valid certificate. Sudo is necessary. Source - Chromium can't be run in headless when testing extensions. Source
Coypright 2021-2023 Renuo AG, published under the MIT license.