Lightweight, private new-tab speed dial for Firefox, Chrome, Edge and Safari. Vanilla JS, no build, no telemetry. Network requests happen only for features you turn on.
- Tab groups, drag-and-drop dials (lockable), configurable grid, tile size, rounded corners, fonts, color schemes.
- Backgrounds: animated gradients (aurora / flame / tide), solid color, image, or opt-in auto-image.
- Icons: site favicon, upload any format (auto-downscaled), reusable library, or letter tiles.
- Widgets: clocks (analog/digital, multiple cities), notes, tasks, calendar — local. Weather, currency, stocks, gold — off by default, opt-in.
- UI languages: en, ru, cs, fr, de (auto-detect + manual switch).
- Optional sync via the browser account; full export/import.
📖 Full step-by-step guide for every browser (incl. installing the unsigned, not-yet-reviewed build): docs/INSTALL.md.
- Firefox (desktop & Android): click the badge to install from Mozilla Add-ons — signed and auto-updating. Before the first review clears, load it temporarily via
about:debugging→ Load Temporary Add-on →manifest.json. - Chrome / Edge: download the zip, open
chrome://extensions(oredge://extensions), enable Developer mode, Load unpacked → the unzipped folder. (Chrome and Edge block one-click installs of files outside their own stores, so unpacked is the only sideload path.) - Safari 15.4+ (macOS/iOS, Xcode): download
safari.zip, runxcrun safari-web-extension-converter <unzipped>, build and enable.
All release assets are on the Releases page.
Data is stored locally; no backend, no telemetry. Network is used only for widgets / auto-image / auto-favicon that you enable — each asks first and connects straight to the chosen source. API keys stay local. Sync (off by default) uses the browser's own account and never syncs images or keys. On Safari there is no sync or notifications; those degrade gracefully.
No build needed to run it. Dev tooling:
npm run lint # web-ext lint
npm run lint:js # eslint
npm run build # web-ext build
Version lives in manifest.json (SemVer) and is bumped by hand. A release is cut only on a vX.Y.Z tag: CI builds the four zips and auto-submits the Firefox (AMO) listing. Other browsers: install from the Release assets.
Vanilla JS, no runtime deps, MV3. Keep network opt-in. New UI strings go in every locale under src/i18n. Run npm run lint and npm run lint:js before a PR.
Report vulnerabilities privately via the repository's Security tab.
GPL-3.0-or-later (see LICENSE).