A polished local new-tab command center for Chromium browsers.
Super Tab Out replaces the default new tab page with a visual dashboard for your open tabs. It groups tabs by domain or by Chrome Tab Groups, protects pinned tabs, gives you fast tab filtering, privacy mode, bilingual UI, and a richer theme picker.
No server. No account. No telemetry. No build step. Load the extension/ folder and use it.
Release notes are tracked in CHANGELOG.md.
- Text-first command desk: a quieter new-tab layout with clear hierarchy, compact controls, and no decorative brand icon in the page header.
- Two ways to organize tabs: switch between domain grouping and Chrome's native Tab Groups.
- Fast tab filtering: press
/and filter cards, chips, URLs, and group names in real time. - Search operators: narrow results with
domain:,group:,url:, andsaved:; fuzzy matches are highlighted. - Side Panel command center: search, jump, save, close, dedupe, restore recently closed tabs, and use local tools without leaving the current page.
- Docked Command Center: desktop layouts keep tools one click away with a compact dock and sortable favorite tools.
- FeHelper-inspired local tools: open a full three-column local tools workbench from the toolbar icon, Command Center, or omnibox for JSON, URL parsing, codecs, timestamps, real QR SVGs, UUID/passwords, hashes, cookies, and session export.
- Keyboard and omnibox entry points: use
stoin the address bar for search/actions, or commands for panel/session/privacy workflows. - Accessibility and motion controls: icon buttons have accessible labels, chips support keyboard activation, and system reduced-motion preferences are respected.
- Privacy mode for screen sharing: click the lock or press
Escto hide the tab dashboard behind a clean clock screen. - Pinned tabs are protected: pinned tabs are excluded from cards, counts, duplicate cleanup, and bulk-close actions.
- One-click duplicate cleanup: repeated URLs are marked and can be cleaned while keeping one copy.
- Save for later: stash a tab into a local checklist before closing it.
- Auto-refresh: tab open, close, navigation, and group changes refresh the dashboard automatically.
- Bilingual UI: switch between English and Simplified Chinese from Settings.
- More themes, easier switching: choose from 14 built-in palettes in the lightweight Settings panel.
- Local-first privacy posture: settings and saved tabs stay on your machine.
The page header keeps the greeting and date visible without repeating the product name. The product identity stays in the browser UI and footer so the new tab page reads lighter.
The top-right controls are intentionally compact:
- Lock: toggles privacy mode.
- Settings: opens language, theme, type, and privacy-screen options.
Available themes:
| Theme | Tone |
|---|---|
| Adaptive Glow | Follows Chrome/Edge light or dark appearance |
| Ivory Page | Minimal white workspace |
| Material Orbit | Clean Material-inspired color system |
| Cupertino Mist | Soft Apple-style glass and mist |
| Warm Parchment | Soft editorial paper |
| Midnight Voyage | Dark, quiet workspace |
| Frost Field | Crisp blue-white |
| Forest Isle | Muted green and earth |
| Graphite Gold | Dark graphite with gold accents |
| Coral Tide | Coastal teal with coral |
| Plum Shade | Low-saturation plum |
| Matcha Haze | Calm green reading mode |
| Ember Slate | Dark slate with warm energy |
| Lavender Breeze | Light lavender with mint |
Additional release screenshots:
| Chrome Groups | Privacy Mode |
|---|---|
![]() |
![]() |
| Theme Picker | Chinese UI |
|---|---|
![]() |
![]() |
- Clone the repo:
git clone https://github.com/SivanCola/super-tab-out.git
cd super-tab-out- Open your browser extension page:
chrome://extensions
edge://extensions
brave://extensions
- Enable Developer mode.
- Click Load unpacked.
- Select the
extension/folder in this repo. - Open a new tab.
To update later, pull the latest code and click Reload on the extension page:
git pullFor normal manual testing, use Chrome and load the extension/ folder from chrome://extensions.
For automated extension testing, use Chrome for Testing instead of the regular branded Chrome app. Recent branded Chrome builds can block command-line unpacked-extension loading, while Chrome for Testing keeps that workflow available for automation.
This workspace can keep a local browser binary at:
tools/chrome-for-testing/
That directory is intentionally ignored by Git because it is large and only needed for local debugging. It is not included in the Chrome Web Store / Edge Add-ons zip packages.
Launch the latest local extension build:
npm run dev:hostBy default the script also prepares a repeatable manual regression scenario on every launch: pinned homepages, duplicate URLs, native Chrome Tab Groups, a collapsed group, mixed ungrouped tabs, a recently closed tab, saved-for-later items, saved sessions, activity metrics, achievements, and local tool favorites/state. It cleans previously seeded tabs before recreating the scenario, so repeated npm run dev:host runs do not stack duplicate seed tabs.
Use scripts/launch-chrome-testing.sh --no-seed-tabs for a clean browser, or --reset-profile for a fresh profile before seeding.
Optional overrides: CHROME_BIN, PROFILE_DIR, REMOTE_DEBUGGING_PORT, SEED_TABS, SEED_DELAY_MS, SEED_CLEANUP, and SEED_REQUIRED.
No build step is required, but the repo includes lightweight local checks for extension changes:
node tests/run-tests.mjs
node scripts/validate-extension.mjsThe validator checks manifest.json, extension script syntax, service script loading order, and store ZIP contents for common local-only files.
| Key | Action |
|---|---|
/ |
Focus the open-tabs filter field |
Esc while the filter is focused |
Clear and blur the filter |
Esc elsewhere |
Toggle privacy mode |
Ctrl/Cmd + Shift + G |
Toggle Groups / Domains view |
Ctrl/Cmd + Shift + Y |
Open the Side Panel |
Omnibox keyword: type sto then a query or action such as panel, save-session, dedupe, or privacy.
Super Tab Out reads your open tabs with chrome.tabs.query({}), filters out browser-internal pages, and renders useful cards:
- domain cards for normal browsing
- a Homepages card for landing pages like Gmail, X, YouTube, LinkedIn, and GitHub
- optional Chrome Tab Groups view
- duplicate badges for repeated URLs
- localhost labels with port numbers
The search pill uses one local index for open tabs, Chrome group titles, saved-for-later items, and saved sessions. Supported filters:
| Filter | Example |
|---|---|
domain: |
domain:github auth |
group: |
group:work api |
url: |
url:docs extensions |
saved: |
saved:true article or saved:false github |
The Side Panel keeps Super Tab Out available while you stay on the current page:
- search open tabs, saved-for-later items, and saved sessions
- open from
Ctrl/Cmd + Shift + Yor omnibox actions such assto panel - jump to a tab, save it for later, or close it
- clean duplicates while keeping one copy
- restore browser-level recently closed tabs/windows via
chrome.sessions - save the current browsing session
- view Tab Health, weekly stats, top domains, and achievements
- use a compact local tool directory with favorites, recent tools, current-tab URL shortcuts, and a link to the full Tools workbench
The full Tools workbench opens from the extension toolbar icon, the Command Center, and omnibox entries such as sto tool json.
Initial tools are local-only: JSON format/minify/validate with tree preview and error diagnostics, URL parsing with query tables, Base64/Unicode/HTML entity codecs, timestamp and FILETIME conversion with cards, real QR SVG generation, UUID/password generation, MD5/SHA hashes, Cookie-to-JSON, and session export as JSON, Markdown, or URL lists.
Domain cards can create native Chrome Tab Groups. Group cards can be renamed, recolored, collapsed/expanded, ungrouped, or saved as a session. Saved sessions appear on the main dashboard and restore into the current window with the Chrome tab group rebuilt.
The extension uses exact URL matching for close actions. This keeps bulk actions scoped to the tabs shown in the card and avoids closing unrelated pages on the same host.
Pinned tabs are skipped by every bulk-close and duplicate-cleanup action.
The bookmark button saves a tab into chrome.storage.local before closing it. Saved items stay local and can be checked off into the archive.
Privacy mode hides the tab dashboard and shows a minimal clock/date screen. It is useful before screen sharing or recording. You can customize whether the privacy screen shows:
- clock
- date
- custom text
- external favicon requests
Theme choice is stored in localStorage and applied before the page paints, so the selected theme does not flash back to the default on reload.
Language choice is also stored locally and applied early. The switch affects fixed UI labels only; tab titles, URLs, Chrome group names, and user-entered text are not translated or modified.
Super Tab Out is local-first.
Stored locally:
- saved-for-later tabs
- saved sessions
- lightweight activity stats and achievements
- privacy mode state and settings
- view mode
- language choice
- theme choice
- favicon cache
External favicon requests can be disabled from privacy settings. When disabled, cached favicons can still render, but new domains will not call the icon service.
The only routine external request, when enabled, is:
icons.duckduckgo.comfor favicons, cached locally for 7 days
No Google Fonts are used. Fonts come from system font stacks.
Privacy mode does not provide a web search box or change the browser search provider.
Store upload packages are generated locally into dist/ with npm run package.
The ZIP files are intentionally ignored by Git and should be uploaded to the Chrome Web Store / Edge Add-ons from the local workspace, not committed to GitHub.
The extension currently requests:
| Permission | Why it is needed |
|---|---|
tabs |
Read, focus, close, and group open tabs |
storage |
Persist saved tabs, sessions, stats, privacy settings, and view mode |
tabGroups |
Read, render, create, update, collapse, and ungroup Chrome Tab Groups |
sidePanel |
Show the Side Panel command center |
sessions |
Show and restore recently closed browser tabs/windows |
| Area | Implementation |
|---|---|
| Extension platform | Chrome Manifest V3 |
| UI | Plain HTML, CSS, JavaScript |
| Storage | chrome.storage.local and localStorage |
| Sound | Web Audio API |
| Animations | CSS transitions and JavaScript particles |
| Build | None |
Everything runs locally in the extension. The background service worker owns browser-level entry points such as the toolbar Tools shortcut, badge count, commands, omnibox actions, side panel, and lightweight session actions.
Super Tab Out is licensed under the Apache License, Version 2.0.
This project is a derivative work based on Tab Out by Zara Zhang, which is licensed under the MIT License.
The Apache-2.0 license text is in LICENSE. Required upstream MIT copyright and permission notices are preserved in NOTICE. Please do not remove those notices from substantial copies or distributions.
This fork adds security hardening, Manifest V3 updates, cross-browser new-tab handling, pinned-tab protection, Chrome Tab Groups view, bilingual UI, expanded theme support, privacy mode, tab filtering, favicon caching, and local-first saved-tab workflows.
This project is not affiliated with Google, Chrome, Microsoft Edge, Brave, DuckDuckGo, or the original Tab Out author. Product names and service names are used only to describe compatibility or attribution.




