Skip to content

snoopysecurity/tabvault

Repository files navigation

TabVault TabVault icon

Stash and restore your browser tabs. A fast, private, Manifest V3 tab manager for Chrome, Edge, and Firefox.

TabVault icon

TabVault is a from-scratch rewrite inspired by (and forked from) the archived better-onetab project. It drops the old self-hosted sync server, Google Drive integration, and third-party analytics in favour of a lean, local-first extension built on Manifest V3.

Features

  • Store selected / all / all-windows tabs into named lists
  • Restore lists in the current window or a new one
  • Keyboard shortcuts and toolbar context menu
  • Import / export (JSON and OneTab-compatible text) — imports old better-onetab backups
  • Optional light sync via chrome.storage.sync
  • No tracking, no remote code, no backend

Tech stack

  • Manifest V3 (service worker background)
  • Svelte 5 + TypeScript
  • Vite + @crxjs/vite-plugin
  • webextension-polyfill for cross-browser APIs

Project structure

src/
├── background/        # MV3 service worker (commands, context menus, messaging)
├── lib/               # framework-agnostic core logic (storage, lists, tabs, exchange)
├── stores/            # reactive Svelte stores over chrome.storage
├── popup/             # toolbar popup app
├── options/           # full-page list manager + settings
├── app.css            # shared styles
└── manifest.config.ts # MV3 manifest (Chrome/Edge + Firefox variants)
public/
├── icons/             # extension icons
└── _locales/          # i18n messages (en, zh_CN)

Install in Chrome

  1. Build the extension:
npm run build
  1. Open Chrome and go to:
chrome://extensions
  1. Enable Developer mode in the top-right corner.

  2. Click Load unpacked.

  3. Select the generated dist-chrome folder.

TabVault should now appear in your Chrome toolbar. You can pin it from the extensions menu for easier access.

Development

npm install
npm run dev              # Chrome/Edge, HMR
npm run dev:firefox      # Firefox

Then load the generated dist-chrome (or dist-firefox) directory as an unpacked extension:

  • Chrome/Edge: chrome://extensions → enable Developer mode → Load unpacked → select dist-chrome
  • Firefox: about:debuggingThis FirefoxLoad Temporary Add-on → pick dist-firefox/manifest.json

Build

npm run build            # dist-chrome
npm run build:firefox    # dist-firefox
npm run build:all        # both

Quality

npm run lint
npm run typecheck
npm test

License

MIT. Original better-onetab code © 2018–2019 Wang Jie; TabVault modifications © 2026 TabVault contributors.

About

Stash and restore your browser tabs. A fast, private, Manifest V3 tab manager for Chrome, Edge, and Firefox.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors