josh-berry / tab-stash

Firefox extension to save and restore tabs as bookmarks. Clear your tabs, clear your mind.
https://josh-berry.github.io/tab-stash/
Mozilla Public License 2.0
713 stars 42 forks source link
bookmark bookmark-manager firefox firefox-addon firefox-extension firefox-webextension sidebar tab-stash tabs tabs-management webextensions

Tab Stash

ci codecov

Can't keep all your tabs straight? Need to clear your plate, but want to come back to your tabs later?

Tab Stash is a no-fuss way to save and organize batches of tabs as bookmarks. Sweep your browser clean with one click of the Tab Stash icon (if configured). Your open tabs will be stashed away in your bookmarks, conveniently organized into groups. When it's time to pick up where you left off, open Tab Stash and restore just the tabs or groups you want.

Screenshot

Want to give it a try?

Install Tab Stash from Mozilla Add-Ons!

Build and Packaging Instructions

You'll need a UNIX-like system (e.g. Mac or Linux) to build Tab Stash. Unfortunately, building on Windows is not supported due to the multiple build steps involved (although patches to make the build more cross-platform are welcome). Here's what you need to do:

  1. Install dependencies. You can use the handy install-deps.sh script to do it automatically on supported OSes/distros (latest macOS and Ubuntu 22.04 are known to work). Or if you prefer to do it manually, install the following:

    • GNU make, git, diff, patch, rsync, zip (plus the usual set of standard UNIX utilities like mkdir, sed, etc.)

    • Node.js and npm (the latest "Current" or "LTS" release)

    • Inkscape version 1.0 or newer--the CLI must be available as inkscape in your PATH. (Note that Inkscape is known not to work when installed via snap; if you're on Ubuntu, please install it with apt-get instead.)

  2. To build a debug/development version: Run make. (You can use -j<...> if you want for a parallel build.)

  3. To build a release version (for packaging or review):

    1. Make sure your source tree has no uncommitted changes (git status should say, nothing to commit, working tree clean).

    2. git checkout the tag for the version you want to build. (Mozilla reviewers, you can skip this step--the provided source bundle should already have the correct tag checked out.)

    3. Run make rel. (You can use -j<...> if you want for a parallel build.)

  4. You'll get the following artifacts:

    • dist: The unpacked Firefox extension

    • dist-chrome: A highly-experimental port to Chrome (also unpacked)

    • (release builds only) releases/tab-stash-X.XX-hhhhhhh.zip: The packed Firefox extension (this is what gets uploaded to AMO)

    • (release builds only) releases/tab-stash-src-X.XX-hhhhhhh.tar.gz: A clean git checkout of the source tree for the release (also for uploading to AMO)

Want to help out?

If you're interested in contributing to Tab Stash, be sure to read the contributing guidelines to get oriented and learn how to submit your changes for inclusion in future releases.

Want to re-distribute Tab Stash?

You're more than welcome to do so according to the terms of the license, and I'm happy to work with you to make sure Tab Stash users have a great experience on your platform. I do have a couple requests, though: