![](OpenLinks-screenshot.png)
⛓️ OpenLinks is a browser extension for opening a lot of links at once ⛓️
Based on an idea by /u/ConsolesQuiteAnnoyMe
List every link on the page
Apply a filter to the list
Open the entire list in tabs
Click "Add to Firefox" at https://addons.mozilla.org/en-US/firefox/addon/openlinks/ to install the most recent version with automatic updates.
Alternatively, you can install the current version or any previous version from the release page. This installation method does not enable automatic updates.
Click the OpenLinks icon in your browser's toolbar. The resulting popup window will list all of the links in the active tab. This is often A LOT of links. Use the filter to avoid potentially opening hundreds of tabs at once.
When "Use Regex" is unchecked, the filter matches each link that contains the input string. When "Use Regex" is checked, the filter's input will be interpreted as a regular expression using your browser's built-in RegExp
object.
The "Ignore Case" checkbox determines whether or not the search should match case. The case of the links in the resulting list is not affected.
Click on any link in the list to open it in a new tab. Primary click will immediately switch to the new tab. Middle click will open it in the background.
Click "OpenLinks" to open every link in the list in new tabs. Your browser will probably crash if you try to open too many at once. So don't do that. 🤷
This is the first browser extension I have written. It's very much a learning experience for me, so feedback is appreciated.
- Leave a review with Mozilla.
- Open an issue to report bugs or suggest features.
- Open a pull request to fix bugs or submit translations.
With NPM:
npm run build
Without NPM:
cd build
bash build.sh
This script will:
- Compile
.js
files from.ts
source. - Copy add-on files into
./build/dist
. - Package the contents of
./build/dist
into an.xpi
file using the name and version from./src/manifest.json
.
Note: Firefox will reject the created file because it is not signed by Mozilla. Experimental builds can be loaded as a temporary add-on in about:debugging#/runtime/this-firefox
.
I haven't tried building this on Windows, but the Linux process might work in Powershell with bash on WSL. Presumably, jq
and tsc
would need to be accessible in PATH.
- Better design.
- Warning when opening way too many links.
- Individual select/deselect on links.
- Bookmark links without opening them first.
- Catch duplicate pages with different hashes
- Cross platform build.