What's New
Side Panel (replaces Popup)
The popup is gone. Sift now lives in Chrome's side panel — always visible while you browse. The panel shows:
- 25 built-in categories with toggle grid (tech, world, lifestyle groups)
- Page scoring for the active tab
- Model status (Ready — WEBGPU/WASM)
- Training data stats and export
- Taste profile radar chart
- Muted keywords at the bottom
Sections are collapsible — collapsed by default for a clean look.
Embedding Cache
getOrEmbed() with an LRU cache holding 2,000 embeddings. Instant re-scores on tab switches and infinite scroll — no redundant model inference for items you've already seen.
Muted Keywords
Block the noise before it reaches the model. Items matching your keywords (case-insensitive substring) render at ~8% opacity — near-invisible, zero compute spent. Add keywords as comma-separated or newline-separated in the side panel.
Collapsible Sections
Categories, Taste Profile, Settings, and Training Data are now collapsible with animated chevrons. Collapsed by default to reduce visual clutter.
Stale Page Score Fix
Fixed a race condition where rapid tab switches could render stale page scores. Request sequencing now ignores responses from superseded loads.
Automated Screenshot Capture
New scripts/capture-screenshots.mjs uses Playwright to load the extension, mock state via chrome.storage.local, and capture composite screenshots (site + side panel) for the demo video. No live model needed — deterministic and CI-friendly.
Updated Demo Video
scripts/generate-video.mjs updated for v0.2: 20 scenes showcasing the side panel, muted keywords, and smart caching. All popup references removed.
Install
- Clone this repo
cd chrome-extension && npm install && npm run build- Open
chrome://extensions, enable Developer Mode - Click "Load unpacked" → select
chrome-extension/dist/ - Click the Sift icon (or pin it) to open the side panel