Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔄 TabFlow

Licensed under the MIT License.

Bring the VS Code tab navigation experience directly to your browser.


About

TabFlow is a lightweight Chrome extension that supercharges your tab navigation with VS Code-style Most Recently Used (MRU) switching and a Quick Open search.

Stop hunting through dozens of tabs in the order they appear. Switch instantly to the tab you actually used last, exactly like your favorite IDE workflow.

Perfect for:

  • Developers who keep many tabs open while coding.
  • Researchers juggling multiple documentation pages.
  • Power users who want faster, keyboard-centric tab switching.

⚡ Features

  • MRU Tab Navigation: Cycle through tabs in the order you last used them, bypassing the default left-to-right browser order.
  • Quick Open Search: Search and filter all open tabs by title or URL to jump anywhere instantly.
  • Visual Overlay: A sleek, VS Code-inspired popup shows your tabs during navigation with real-time highlighting.
  • Per-Window Tracking: Each Chrome window maintains its own independent MRU stack.

🚀 Installation

Developer Mode (Local Installation)

  1. Download or clone this repository to your computer.
  2. Open Chrome and navigate to chrome://extensions/.
  3. Enable Developer mode (toggle located in the top right corner).
  4. Click the Load unpacked button.
  5. Select the tabflow directory from your computer.

Verifying Shortcuts

Chrome requires manual verification of extension shortcuts upon installation:

  1. Navigate to chrome://extensions/shortcuts.
  2. Locate the TabFlow section.
  3. Ensure all shortcuts are assigned. If any are blank, click the input box and press your desired key combination.

⌨️ Keyboard Shortcuts

Action Windows / Linux macOS
MRU Navigate Forward Ctrl+Y Cmd+Y
MRU Navigate Backward Ctrl+Shift+Y Cmd+Shift+Y
Quick Open (Search) Ctrl+M Cmd+M

Note: All shortcuts can be customized at any time via chrome://extensions/shortcuts.


📖 Usage Guide

MRU Navigation (VS Code Style)

  1. Open several tabs and click between them to build your usage history.
  2. Press Ctrl+Y to trigger the overlay, highlighting the 2nd most recently used tab.
  3. Keep holding Ctrl and press Y again to cycle forward through your history.
  4. Keep holding Ctrl and press Shift+Y to cycle backward.
  5. Release the Ctrl key to immediately switch to the highlighted tab.
  6. Press Escape at any time to close the overlay without switching.

Quick Open Search

  1. Press Ctrl+M to launch the search interface.
  2. Type immediately to filter open tabs by title or URL (case-insensitive).
  3. Use the Up and Down arrow keys to navigate the filtered results.
  4. Press Enter to confirm and switch tabs.

🔒 Permissions

TabFlow respects your privacy. It does not collect, store, or transmit any personal data. All data remains local to your current browser session.

Permission Justification
tabs Required to read open tabs (titles, URLs, IDs) and execute switches.
activeTab Required to render the visual overlay onto your current screen.
storage Required to save the MRU stack so it survives Chrome restarts and service worker sleep states.
scripting Required to inject the overlay UI (content script) safely into pages.

🛠️ Development & Architecture

TabFlow is built using Manifest V3 and utilizes a modern, event-driven architecture.

Core Flow

User initiates shortcut
       │
       ▼
background.js (Service Worker)
 ├─ Reads the saved MRU stack
 ├─ Generates a frozen snapshot (for stable MRU cycling)
 └─ Dispatches message to the active tab
       │
       ▼
content.js (Active Tab)
 ├─ Renders Shadow DOM overlay UI
 ├─ Captures arrow keys, Enter, and Escape
 └─ On confirm: Dispatches selection back to Service Worker
       │
       ▼
background.js (Service Worker)
 └─ Executes the tab switch

About

VS Code-style MRU tab navigation for Chrome - switch tabs by most recently used order + Quick Open search

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages