Work / personal
DropScout
Competition-intelligence dashboard that scrapes three marketplaces in parallel and rolls listings into a 0–100 product competition score.
- Kind
- personal
- Status
- complete
- Role
- solo
- Period
- Jan 2026 – May 2026
Problem
Deciding whether a product is worth selling means answering “how crowded is this already?” That answer is scattered across marketplace listings, ad spend and seller counts, none of which talk to each other. DropScout collapses that into a single number a person can act on in a few seconds.
Data
- Sources: eBay API, Facebook Ad Library API, Google Shopping (scraped via Playwright)
- Shape: listing-level records: price, seller, ad presence, timestamps
- Storage: PostgreSQL, structured columns plus JSONB for the raw scrape payloads
- Known biases:
Approach
An async FastAPI backend fans out to all three sources in parallel, so a query costs roughly the latency of the slowest source rather than the sum of all three. Listings are then rolled into a weighted 0–100 competition score across three axes:
- price: spread and floor across active listings
- ad density: how much paid acquisition is already pointed at the product
- seller count: how many distinct sellers hold inventory
A React + TypeScript frontend renders scores and competitor trends over time with Recharts. The whole stack is containerized so a run is reproducible.