Back to the work
Software / Deployed · public demo

Sift

Less tab switching. More clarity.

A browser extension and research workspace that turns saved webpages into structured comparisons, with evidence behind each extracted field.

Sift SAVE · COMPARE · DECIDE
Edmonton Apartments
PropertyMonthly rentParking
Garneau Place Yes
River Valley Loft$1,475 Yes
INTERACTIVE ILLUSTRATION · FICTIONAL DEMO DATA
01

The problem

Research often ends up scattered across tabs. Comparing apartments, jobs, products, or courses means repeatedly finding the same facts, with little record of where each value came from. Sift brings those options into one customizable comparison while keeping the source attached.

02

A deliberate capture workflow

A Manifest V3 Chrome side panel captures one page when the user explicitly asks. It collects cleaned text, structured data, tables, metadata, and the canonical URL. The workspace tracks extraction progress while the user continues browsing.

03

Evidence before confidence

Explicit structured facts are extracted deterministically before Gemini fills remaining fields. Runtime schemas validate the resulting types, and non-null extracted values require supporting evidence. Missing information remains unknown. Manual corrections survive re-extraction, and new fields can be populated from stored snapshots.

04

From extension to database

Shared TypeScript contracts connect the web app, extension, and backend. Supabase provides authentication, PostgreSQL, private storage, and authenticated Edge Functions. Owner-scoped access, quota reservations, duplicate detection, and atomic extraction commits address the work beyond the interface.

05

Testing and current scope

The repository includes unit, contract, backend, database, and Playwright coverage. The public demo uses fictional data, works without an account, and makes no AI calls. Authenticated capture and extraction are separate from this demo. Broader live extraction benchmarks and acceptance checks are documented as remaining work.

KEEP EXPLORINGOffshoot