• Stars
    star
    245
  • Rank 165,304 (Top 4 %)
  • Language
    TypeScript
  • License
    GNU General Publi...
  • Created almost 8 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Browser extension for opening lists of URLs built on top of WebExtension with cross-browser support

Open Multiple URLs Browser Extension

test status

Browser extension for Chrome and Firefox that opens a list of URLs and additionally extracts URLs from text.

Install the extension via Chrome Web Store or Firefox Add-ons.

Usage

There should be an icon in the browser's toolbar. Chrome hides extension icons by default, so you have to "pin" it to the toolbar. Click the "Extensions" button in the toolbar to do that. Then click on the extension's icon, enter URLs and click the "open" button.

Building the project

The project is written in TypeScript, uses Parcel for bundling, Jest for testing, ESLint for linting and Prettier for formatting. It requires Node Version >= 12 to build.

Due to incompatible manifest.json definitions, there are separate builds for Firefox and Chrome.

First: Install packages via npm install.
Then use one of the following build commands:

Command Description Output dir
npm run build:firefox static production build for Firefox dist-firefox
npm run build:chrome static production build for Chrome dist-chrome
npm run dev:firefox live build (watch-mode) for Firefox dist-dev
npm run dev:chrome live build (watch-mode) for Chrome dist-dev
npm run build:all format, lint, test and build for production for all browsers dist-firefox
dist-chrome

See instructions for Chrome and instructions for Firefox on how to load an unpacked extension.

Have a look at the package.json for all run scripts.

Features

  • Open a list of URLs simultaneously.
  • Load and render page on tab focus.
  • Extract URLs from text.
  • Input text and options saved locally.
  • Open tabs in random order.

Permissions

  • "Storage" permission in order to save settings and user input.