Beta recruiting now

Tame your tabs without touchingthe browser tab bar

Tab Garden gathers every window's tabs into one full-screen board, group them, snooze them, sync workspaces across devices, while your browser tab bar stays exactly as it is.

  • No tabGroups permission
  • Local-first, no tracking
  • Multi-window aggregation

Supports Chrome · Edge · Manifest V3

Before
GitHub - tab-manager/pull/142
How to focus - YouTube
React docs: Hooks
Notion - Roadmap Q3
Medium: 深度长文
Stack Overflow
Figma - Landing v2
Twitter / X
MDN - Array.from
GitHub - tab-manager/issues

Dev

Window 1
GitHub - tab-manager/pull/142
React docs: Hooks
Stack Overflow
MDN - Array.from

Read later

Reminder 14:00
How to focus - YouTube
Medium: 深度长文

Work

Window 1
Notion - Roadmap Q3
Figma - Landing v2

Social

Window 2
Twitter / X
GitHub - issues
Browser tab bar · unchangedBoard view

Core features

Not just another tab manager: a complete workflow

From aggregation and grouping to snooze and cross-device sync, Tab Garden shrinks “find that tab” from 5 minutes to 3 seconds.

Virtual grouping board

Auto-group by domain or create custom groups in 9 colors; every group lives only in the board, never calls chrome.tabs.group, and your browser tab bar stays untouched.

  • Auto-group
  • 9 colors
  • No browser change

Full-screen board · multi-window

Escape the cramped 390px popup. One full-screen board aggregates tabs from all normal windows, marks them by source window, filters by window, and searches title/URL/domain in real time.

  • Multi-window
  • Live search
  • Window filter

Drag-and-drop masonry layout

HTML5 drag: move tabs between groups, reorder entire groups. Auto-flowing masonry grid with optional manual layout; desktop / tablet / phone positions are saved independently and never overwrite each other.

  • Drag
  • Masonry
  • Per-device memory

Snooze tabs (Deferred Tabs)

Tuck away “read later” tabs and close them with custom reminder times (default 09:00 / 14:00 / 18:00, up to 5). The board highlights them when due; one click reopens.

  • Close to archive
  • Timed reminder

Workspaces · cross-device sync

Manually curate tabs into a named workspace storing only titles and URLs, synced to your own Supabase. Sign in on another device to restore or edit; the extension never auto-uploads current tabs.

  • Manual curation
  • Syncs title + URL only

Duplicate tab cleanup

One-click scan across all windows, aggregate duplicates by exact URL, preview the keep/close list and confirm. Tabs whose state changed after preview are skipped to avoid accidental closing.

  • All-window scan
  • Preview confirm

Pain point

Finding that tab shouldn't take 5 minutes

We've all been there: you know a tab is open, yet you're scrolling through 50 cramped titles. Tab Garden's full-screen board cuts it down to 3 seconds.

  1. 01

    Open the board

    Full-screen board aggregates tabs from all windows, auto-grouped by domain

  2. 02

    Locate the group

    Filter by window or search title/URL/domain: lock on in 3 seconds

  3. 03

    Click to jump

    Click a card to switch to the window and activate that tab

Before~5 min

Linear scanning through 50+ tabs, switching back and forth

With Tab Garden~3 sec

Open board → enter group → find tab

3
Desktop masonry lanes
9
Group colors
300ms
Board refresh throttle

Why different

Don't let a tab manager hijack your browser

Many extensions leave a mess when removed. Tab Garden keeps all order in the board so your browser stays clean.

The only grouping that never touches browser tabs

Other tab managers call chrome.tabs.group and rewrite your tab bar, leaving colored blobs when removed. Tab Garden's groups are purely virtual: they live in the board, and removing the extension restores the browser instantly.

No framework, no bundler, no SDK

Plain TypeScript compiled by tsc, with only 2 dev dependencies in package.json. Fast to load, small in size, fully auditable. No React/Vue runtime, no Supabase SDK shipped into your browser.

RLS row-level security, your data

Sync runs through your own Supabase, every table isolated with auth.uid() = user_id. The service_role key never enters the extension; only the anon/publishable key is in the build.

Full import / export, zero lock-in

Export settings, domain rules, and ignored sites as JSON in one click. Preview counts before import and confirm explicitly to overwrite. Your workflow isn't tied to any account system.

What Tab Garden delivers

  • Virtual grouping (no browser tab bar change)
  • Full-screen board (not a 390px popup)
  • Multi-window aggregation + window filter
  • Built-in tab snooze / deferred tabs
  • Duplicate tab preview cleanup
  • Independent layout memory per device type
  • Local-first + self-hostable Supabase

How it works

Grow your tab garden in four steps

  1. 01

    Install and open the board

    After install, click the toolbar icon to open the full-screen board from the popup. Optionally enable “new tab override” so every new tab opens the board; turn it off anytime to restore the native new tab page.

  2. 02

    Auto-group or customize

    The board auto-groups by domain by default (set a 2/3/4 tab threshold); or select tabs in the popup, name a group, pick from 9 colors. Use domain rules to match multiple domains into one group.

  3. 03

    Snooze and deduplicate

    Click snooze on tabs you'll read later, pick a reminder time and they close and archive. To clean up, scan duplicate URLs in one click and batch-close after preview.

  4. 04

    Sign in for cross-device sync

    Connect your own Supabase account to sync settings, domain rules, ignored sites, board layout, and workspaces. Sign in on another device to restore your full setup.

Privacy & data

Your data belongs to you

Tab Garden doesn't hoard your browsing history on a server. Local-first storage + self-hostable Supabase sync; the extension only requests “tabs”, “storage”, and an optional Supabase host permission.

All permissions requested by the extension

tabsstoragehost: *.supabase.co (optional)

Does not request tabGroups, history, bookmarks, cookies, or any sensitive permission.

Local-first

All groups, layout, snoozed items, and custom groups live only in chrome.storage.local by default, never touching a server.

No auto-upload of tabs

The extension never auto-uploads or streams your currently open tabs. Workspaces sync only the titles + URLs you manually curate, with runtime IDs stripped.

RLS row-level isolation

Sync goes through your own Supabase, every table isolated with auth.uid() = user_id. The service_role key never enters the extension; only the anon key is in the build.

Full export, zero lock-in

Export settings, domain rules, and ignored sites as JSON in one click; preview counts before import and confirm to overwrite. No account system lock-in.

Beta recruiting now

Ready to tend your tab garden?

Join the beta to experience new features first and send feedback directly. Your browser tab bar won't be touched: that's the Tab Garden promise.

Or install directly from the store:

FAQ

Things you might ask

Does Tab Garden modify my browser's tab groups?

No. Tab Garden uses virtual grouping: all auto/custom groups exist only in the extension board and never call chrome.tabs.group or request the tabGroups permission. Remove the extension and your browser reverts instantly.

Does Tab Garden collect my browsing history?

No. Your tab data is stored only in the local browser by default. Cross-device sync requires you to connect your own Supabase account; the keys are yours, and the extension never auto-uploads your currently open tabs.

Which browsers are supported?

Currently Chrome and Edge (Manifest V3). Firefox is not yet supported; join the beta to get early access to new platforms.

What are workspaces and workspace snapshots?

A workspace is a named set of tabs you manually curate, storing only titles and URLs. It syncs to your Supabase so you can restore or edit it on any device after signing in. The extension never auto-uploads your currently open tabs.

How do Deferred Tabs (snooze) work?

Click the snooze button on any tab in the board and choose a preset reminder time (default 09:00 / 14:00 / 18:00, up to 5 customizable in options). The tab closes and enters a local restore list; when due, the board highlights it and you can reopen with one click.

Can the board replace the browser's new tab page?

Yes. Enable “Open board on new tab” in options and every new tab opens the board. This is implemented via event listeners rather than chrome_url_overrides; turn it off anytime to restore the native new tab page without restarting.

Is this a free tool?

Core features are free. A Pro plan for teams or power users may be introduced in the future, but local core functionality will always remain free.