Browser Hub puts every browser on your computer in one place: a single icon in the top panel that opens a clean list of everything you have installed, ready to launch with one click. No more digging through an app grid full of near-identical icons. Browser Hub recognizes over 50 browsers — Firefox, Chrome, Brave, Edge, Vivaldi, Opera, Zen, LibreWolf, GNOME Web, and many more — however you installed them: as a regular system package, a Flatpak, or a Snap. A small badge tells you which is which. If you use browser profiles, Browser Hub shows them too: - Firefox and Chrome/Chromium-based browsers: every profile, listed by name, with your default one clearly marked. - Firefox's newer profile groups and Zen Browser's workspaces show up as their own colored, icon-labeled entries — jump straight into a specific one without opening the browser first. Two more one-click shortcuts sit right at the top of the menu: - Launch your current default browser, or pick a new one from a simple list — no digging through system settings. - Start a "burner" session: a fresh, throwaway browser profile with anti-tracking protection turned on, perfect for a quick private errand. It cleans itself up on its own — no manual work needed. Everything is optional and configurable from the extension's preferences — show or hide any of the above to match how you actually browse. Not affiliated with any browser vendor mentioned above; all names and logos belong to their respective owners.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-P-006 warning
unnecessary build and translation artifacts should not be shipped
Compiled GSettings schemas should not be shipped for 45+ packages.
Don't include unnecessary files
schemas/gschemas.compiled
schemas/gschemas.compiled
EGO-L-003 warning
signals connected by extension should be disconnected in disable()
Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.
extension.js:394
this._menuOpenStateId = menuSignals.connect("open-state-changed", (_menu, isOpen) => {
if (isOpen) {
clearDefaultBrowserCache();
this.redrawMenu();
}
})
| Version | Status |
|---|---|
| 2 | Unreviewed |
| 1 | Rejected |
Ha, just saw a dead line code from Helpers4 lib. File vendor-helpers4.js, line 245: > new RegExp(`^#?([\\da-f]{3}|[\\da-f]{4}|[\\da-f]{6}|[\\da-f]{8})$`, "i"); Need to fix that in Helpers4 lib before update the build.
Didn't review since all files transpiled into one file. Please let them stay in the correct modules, just like the source. Also, don't hold anything in global scope after disable: - [EGO Review Guidelines: Initialization](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#only-use-initialization-for-static-resources) - [EGO Review Guidelines: Destroy](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#destroy-all-objects)