A simple Chrome/Chromium browser extension that saves and restores browser window sessions with all tabs in one click.
Features β’ Installation β’ Usage β’ Development β’ Privacy
| Light Mode | Dark Mode |
|---|---|
![]() |
![]() |
- πΎ Save Window - Save all tabs of the current window as a session
- πͺ Save & Close - Save window and automatically close it after saving
- π Restore - Restore any saved session in a new window with a single click
- ποΈ Delete - Remove sessions you no longer need
- πΎ Persistent Storage - Sessions are stored locally and persist across browser restarts
- π Theme Support - Automatically adapts to your browser's light/dark theme
- π Privacy First - All data stays on your device, no external servers
- π« Smart Filtering - Automatically skips internal browser pages (chrome://, etc.)
Coming soon! The extension will be available on the Chrome Web Store soon. Check back later.
-
Clone or download this repository
git clone https://github.com/MDC91/Browser-Tab-Saver.git cd Browser-Tab-Saver -
Open Chrome Extensions
- Navigate to
chrome://extensionsin your Chrome browser - Enable "Developer mode" in the top right corner
- Navigate to
-
Load the Extension
- Click "Load unpacked"
- Select the project directory (the folder containing
manifest.json) - The extension is now loaded and ready to use!
- Open the extension popup by clicking the extension icon in your browser toolbar
- (Optional) Enter a custom name for your session in the input field
- Click "Save Window" to save the session
- Click "Save & Close" to save and immediately close the current window
- Open the extension popup
- Find the session you want to restore in the list
- Click "Restore" next to the session
- The session will open in a new window with all tabs in their original order
- Open the extension popup
- Find the session you want to delete in the list
- Click "Delete" next to the session
- Confirm the deletion in the dialog
If you don't enter a name, the extension will automatically generate one:
Session 2026-01-13 14:35
window-tab-saver/
βββ manifest.json # Extension manifest (Manifest V3)
βββ popup.html # Popup UI
βββ popup.css # Popup styling with theme support
βββ popup.js # Main application logic
βββ types.d.ts # TypeScript type definitions
βββ icons/ # Extension icons
β βββ icon16.png
β βββ icon48.png
β βββ icon128.png
β βββ icon.svg # Source SVG
βββ README.md # This file
βββ AGENTS.md # Guidelines for AI agents
βββ CHROME_WEB_STORE_PUBLISHING_PLAN.md # Publishing guide
- Manifest Version: V3
- Languages: HTML5, CSS3, JavaScript (ES6+)
- Storage: Chrome Storage API (
chrome.storage.local) - Permissions:
tabs,storage,windows
No build process required! This extension uses vanilla JavaScript and can be loaded directly in Chrome.
- Popup Console: Right-click in the popup and select "Inspect" β Console
- Background Service Worker: Go to
chrome://extensions, find the extension, and click the "Service worker" link
See AGENTS.md for detailed coding guidelines, naming conventions, and best practices.
- β
All data is stored locally in your browser (
chrome.storage.local) - β No data is sent to external servers
- β No tracking or analytics
- β Only URLs and page titles are stored (no page content, form data, or history)
- β Open source - you can audit the code yourself
For each session, the extension stores:
{
"id": "session-id",
"name": "My Session",
"createdAt": "2026-01-13T12:00:00.000Z",
"tabCount": 12,
"window": {
"tabs": [
{
"url": "https://example.com",
"title": "Example Page",
"index": 0,
"pinned": false,
"active": true
}
]
}
}- Storage Limit: ~5-10 MB per extension
- Estimated Usage: ~70-150 bytes per tab
- Capacity: Can store 300-700 sessions with 10 tabs each
- Internal browser pages (
chrome://,edge://,about:blank, etc.) are automatically skipped - Duplicate URLs are allowed and will be restored as separate tabs
- Very large sessions (100+ tabs) may take a moment to restore due to rate limiting
- Pages that no longer exist will show browser error pages when restored
- No cross-device sync - sessions are stored locally only (privacy-focused design)
- Export/Import sessions as JSON for backup
- Search and filter sessions
- Auto-save on window close (with opt-in)
- Cross-device sync (optional, user-controlled)
- Tab groups support (Chrome-specific)
- Keyboard shortcuts
- Session organization (folders, tags)
See the Issues page for feature requests and bug tracking.
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow the coding standards in AGENTS.md
- Keep changes focused and minimal
- Test thoroughly before submitting
- Update documentation as needed
Found a bug? Have a feature request? Please open an issue with:
- A descriptive title
- Steps to reproduce (for bugs)
- Expected vs actual behavior
- Browser version and OS
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Chrome Extensions APIs
- Inspired by the need for simple, privacy-focused session management
- π Report bugs: GitHub Issues
- π‘ Feature requests: GitHub Issues
Made with β€οΈ by MDC

