Skip to content

mikeconley/multi-select-tabs

Repository files navigation

MultiSelect Tabs

MultiSelect Tabs is a WebExtension that introduces a sidebar that allows you to select one or more tabs in your browser window and perform various operations on them.

Currently supported operations:

  • Close tabs
  • "Gather" tabs (puts selected tabs next to one another)
  • Basic tab filtering
  • Select all tabs

I originally aired the creation of this WebExtension as part of The Joy of Coding: Episode 100.

Installation

MultiSelect Tabs can be installed in Firefox Nightly (55) here

Contributing

Dependencies are managed with yarn. Install them by running yarn. You can then build the extension by running:

yarn run webpack

To build for production (e.g., for publishing on addons.mozilla.org), set the NODE_ENV environment variable to PRODUCTION. i.e,

export NODE_ENV=PRODUCTION
yarn run webpack

This will result in the bundle using the production version of React. When building the final XPI, use web-ext in the root directory with:

web-ext build -i test/*

This should put the XPI inside the web-ext-artifacts folder.

To test this addon, you require a recent build if [Firefox Nightly][nighty]. Go to about:debugging and choose Load Temporary Add-On. Browse to your local checkout and select manifest.json to load the add-on. Make sure you have built the addon by running the commands above or this will not work.

To reload your addon, browse back to about:debugging and click Reload next next to the MultiSelect Tabs entry under Temporary Extensions.

You can make webpack re-build the extension whenever files change. To do this, run:

yarn run webpack -- -w

You will still have to reload the extension as above.

To contribute a patch, fork this repository and send a pull request. I'd love to make this super useful for people.

Testing

Tests can be run with:

yarn run jest

About

A WebExtension that adds a sidebar to perform selections on multiple tabs in a window

Resources

License

Stars

Watchers

Forks

Packages

No packages published