Skip to content

jdepew88/TabStack

Repository files navigation

Tab Stack logo

Tab Stack

OneTab-style tab sessions — organized by project, with bookmarks and download context.

Local-first · Manifest V3 · No backend · No analytics

Install · Features · Layout · Development · Privacy


Tab Stack is a Chrome extension that collapses open tabs into saved project stacks, keeps a bookmark library you can browse like a mini file manager, and helps you reconnect downloads to the research session they came from. Everything stays on your device in chrome.storage.local.

Inspired by the workflow of tools like OneTab and is the sister extension to TubeStack which saves YouTube sessions as playlists (save → organize → restore later), but aimed at long-running projects and bookmark/session organization and reference. Users canm research, collect and organize sources (including linking downloads to sessions or individual projects saved in bookmarked folders), allowing them to sprawl through old sessions when wanting to resume projects / seesions weeks later.

Features

Launchpad

  • Shortcuts from your Chrome bookmarks bar or recent history
  • Global search across all saved sessions and bookmark library entries
  • Optional DuckDuckGo search and Open-Meteo weather
  • Themes + custom background image
  • Hide shortcuts from the pad only (they remain in the library)

Sessions

  • Playlist-style session list with priority, groups, and category taxonomy (L1 / L2 / L3)
  • Session detail: list, details, or grid views for tabs
  • Per-tab priority, tags, page metadata backups, Wayback links
  • Optional live link check (optional http(s)://*/* permission when prompted)
  • Download intelligence — correlate downloads to a session by domain and filename hints
  • Restore tabs flat or restore with Chrome tab groups (from bookmark folder paths)
  • Export / import full JSON backup

Bookmark library

  • TubeStack-style sidebar + main manager with Google-style folders
  • Flat list and icon grid views
  • Link a local folder per bookmark folder (Chrome folder picker) for filenames, sizes, extension badges, and image thumbnails
  • Editable display name and working path label
  • Syncs with the Imported Bookmarks session

Everywhere else

  • Popup — save current window, attach recent downloads, open home
  • Context menu — save tab, save window & close, collect tabs left/right/except, open home
  • Settings — erase data, re-import bookmarks, permissions, category groups, API key placeholders for future AI categorization

Screenshots

Add screenshots here after capture (recommended 1280×800 for store listings).

Launchpad Sessions Bookmark manager
coming soon coming soon coming soon

Install

Chrome Web Store

Coming soon. For now, load unpacked in Developer mode (below).

Developer mode (load unpacked)

  1. Open Chrome and go to chrome://extensions
  2. Enable Developer mode (top right)
  3. Click Load unpacked
  4. Select this repository folder (the one containing manifest.json)
  5. Pin Tab Stack from the extensions menu

Reload the extension after pulling updates from git.

Project layout

TabStack/
├── manifest.json          # Manifest V3 entry
├── background/            # Service worker (context menus, URL checks)
├── popup/                 # Toolbar popup — quick save
├── home/                  # Main UI (Launchpad, Sessions, Bookmarks, Settings)
├── sidepanel/             # Side panel stub → opens home
├── dashboard/             # Redirect to home
├── shared/                # Storage, bookmarks, tabs, categories, search
├── icons/                 # Extension icons (16–128)
├── assets/                # In-app branding (logo)
├── PRIVACY.md             # Privacy policy
├── STORE_LISTING.md       # Chrome Web Store draft copy
└── RELEASE_CHECKLIST.md   # Manual QA before publish

Permissions

Permission Why
tabs Save and restore tab URLs
storage / unlimitedStorage Local session and library data
downloads Attach download metadata to sessions
bookmarks Import and manage bookmark library
history Optional “Recent sites” on Launchpad
tabGroups Restore sessions with tab groups
contextMenus Right-click collect actions
sidePanel Side panel entry point
http(s)://*/* (optional) Optional per-URL link check

See PRIVACY.md for network use (weather, favicons, DuckDuckGo, Wayback).

Development

No build step — edit HTML/CSS/JS directly, then reload the extension.

  1. Clone this repo
  2. Load unpacked at chrome://extensions (see above)
  3. Open Tab Stack home from the popup or chrome-extension://<id>/home/home.html
  4. For the service worker: Service worker link on the extension card → DevTools

Version is set in manifest.json (currently 0.3.0). Data schema migrations live in shared/migrate.js.

Quick manual test

Use RELEASE_CHECKLIST.md before tagging a release.

Roadmap

  • Chrome Web Store publish
  • README / store screenshots
  • AI categorization using user-supplied API keys (settings placeholders exist)
  • Firefox port (separate manifest)
  • Sync / share session packs (opt-in, still local-first)

Privacy

Tab Stack is local-first. It does not run a Tab Stack backend or analytics. Full details: PRIVACY.md.

License

MIT

Contributing

Issues and PRs welcome. Please avoid committing secrets (.env, API keys). Use export/import JSON for your own backups, not the repo.

About

Local-first Chrome extension: save tab sessions, bookmarks, and download context by project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors