OpenTabs.

Blog

A new tab page that makes no network request

You open a new tab thirty to a hundred times a day. A page that has to fetch headlines, weather or a quote before it can draw makes you wait for it every one of those times. OpenTabs is built the other way round: all of its work happens before you open the tab, and opening one is just reading the answer.

What happens when the tab opens

The new tab page reads your configuration and the finished results from the extension's own storage, then draws. That is the whole job. Its script contains no fetch, no XMLHttpRequest and no WebAssembly, and this is not left to code review: a test runs against the built extension and fails if any of the three appears in the page's script.

The same test suite caps everything the new tab loads (markup, stylesheet and script together) at 28 KB gzipped. The cap is there so that a library quietly finding its way onto the page shows up as a failed build rather than as a page that gets a little slower every release.

Where the work happens instead

In the extension's background service worker, where nobody is waiting on it. An alarm wakes it every five minutes. It looks at the groups you turned on, refreshes only the ones whose stored result has gone stale, and writes render-ready data back into local storage for the next tab to read.

The parsing, grouping and ranking are a Rust library, compiled to WebAssembly, that runs only in the worker. It is what turns a pile of feeds into a short list:

Why the same design keeps your data at home

Because the extension fetches its own data from your browser, there is nothing in between. Each request goes straight from your browser to the source you added (a feed, a weather API, a calendar address) and is not proxied through anyone. The honest trade is that those sources see your IP address, the same as visiting them would.

A group you never enable makes no request at all. The extension does not ask for access to every site at install; it asks for one site at a time, when you add it. There is no account to use it, and your configuration and your open tabs stay in your own browser profile. The privacy page lists every host the extension can reach and when.

Who it is for

People who keep a lot of tabs open and want to see them, grouped and closable, every time they open a new one, with a small briefing above them that they put together themselves. It runs on Chrome 121 or later, Edge, and Firefox 128 or later. Chrome 121 is the floor because that is the version that reports when each tab was last used, which is what lets OpenTabs sort tabs by what you touched last.

OpenTabs is free and open source under the AGPL-3.0-or-later licence. It installs from the Chrome Web Store, Firefox Add-ons and Microsoft Edge Add-ons. The source is on GitLab.