A cross-browser extension that automatically minimizes (collapses) tab groups after a configurable period of inactivity to help keep your browser organized and reduce visual clutter.
Now supports both Chrome and Firefox!
- Smart Auto-Minimization: Automatically collapses inactive tab groups after a customizable timeout
- Active Tab Protection: Groups containing active tabs are never minimized
- Multi-Window Support: Works seamlessly across multiple browser windows
- Configurable Timeout: Set custom delay from 1 second to 1 hour via popup interface
- Cross-Browser Compatible: Works on both Chrome and Firefox with identical functionality
Chrome:
- Install from Chrome Web Store
Firefox:
- Install from Firefox Add-ons
-
Clone the repository
git clone https://github.com/yoneoarai/auto-minimize-tab-groups.git cd auto-minimize-tab-groups -
Install dependencies
npm ci
-
Build the extension
# Build for both browsers (recommended) npm run build # Build for specific browser npm run build:chrome # Chrome only npm run build:firefox # Firefox only # Development builds with source maps npm run build:dev # Both browsers npm run build:dev:chrome npm run build:dev:firefox
-
Load in browser
Chrome:
- Open
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" and select
dist/chrome/
Firefox:
- Open
about:debugging - Click "This Firefox"
- Click "Load Temporary Add-on"
- Select
dist/firefox/manifest.json
- Open
-
Package for distribution
npm run package # Creates both chrome-extension.zip and firefox-extension.zip # Or package individually npm run package:chrome npm run package:firefox
Access the extension settings instantly through:
- Click the extension icon in your Chrome toolbar
- Modern popup interface opens immediately - no separate tabs needed!
- Node.js 16+
- npm or yarn
- Chrome browser (for testing)
# Install dependencies
npm ci
# Development build (TypeScript compilation)
npm run build-local
# Production build (webpack with optimization)
npm run build
# Create distribution package
npm run package
# Run tests (when implemented)
npm testsrc/
├── background.ts # Main service worker logic
├── popup.ts # Popup interface functionality
└── popup.html # Popup interface UI
dist/ # Build output
manifest.json # Extension manifest
package.json # Node.js dependencies
webpack.config.js # Build configuration
tsconfig.json # TypeScript configuration
If you find this extension helpful and want to support its development:
Your support helps keep this project maintained and enables new features! 🙏
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes with proper error handling and validation
- Test thoroughly across different scenarios
- Commit with clear messages:
git commit -m 'Add amazing feature' - Push to your branch:
git push origin feature/amazing-feature - Open a Pull Request
ISC License - see LICENSE file for details
Made with ❤️ by Yoneo Arai