SCOUR
AI Shopping Agent — Luxury & Streetwear
Finding the best price on luxury and streetwear resale means checking platform after platform, one by one. I built an AI agent that does it in seconds: one search, every source, every deal scored.
Overview
Scour is a mobile-first shopping agent for the secondary luxury and streetwear market, currently live as a web app, architected from day one for native iOS. It searches across 30+ resale platforms in real time, normalizes product data across sources, and surfaces the best deals using a proprietary scoring system. I designed and built the entire product solo: UX, visual system, frontend, backend, data infrastructure, and AI integration.
Search Engine
AI-powered search that understands natural language queries across every major resale platform. Describe what you're looking for in plain English and get ranked results from 30+ sources instantly.
Conversational AI
Beyond keyword search. Scour understands intent. Ask it to find alternatives, compare across brands, or narrow by condition and size. Natural language gets translated into structured queries across every connected source.
Problem Statement
Shopping the secondary luxury market means manually checking platform after platform for every single item, with no way to compare prices, verify deals, or know if you're overpaying.
The workflow is broken: A shopper opens dozens of resale platforms in separate tabs. They compare prices manually with no historical context, no deal scoring, and no way to know if the same item is available cheaper somewhere they haven't checked. The process is slow, incomplete, and buyers routinely overpay.
Solution
One search bar replaces the multi-tab ritual. Scour aggregates listings from 30+ resale platforms in real time, normalizes product data across sources, and scores every deal. Three design principles: show the best deal first, make the data legible at a glance, never make the user leave the app to compare.
Onboarding
Brands, sizes, budget, and style preferences configure the AI from day one.
Filter Sheet
Bottom sheet with haptic feedback, narrow by source, price, condition, and size.
Design Explorations
Card systems, data density, and feed architecture
The core design question was how to display product listings that carry significantly more data than a typical e-commerce card. Each item needs to communicate brand, product name, price, source count, deal score, price range, and trend direction, without overwhelming the user. I explored four distinct directions, each testing a different balance of editorial appeal vs. data density.
A. Editorial Cards
- •Hero + grid layout: Lead item as a full-width editorial card with overlaid text, followed by a 2-column grid
- •Minimal data: Brand, name, price, and source count only. Prioritizes visual impact over information density
- •SSense-inspired: Clean product photography with monospace pricing, editorial feel
Landing + Onboarding
B. Data-Forward Cards
- •Full-width list cards: Each item gets a horizontal card showing thumbnail, brand, name, deal score, price, range, sparkline, and source count
- •Data-driven density: Green/red price change indicators, circular deal score badges, price range bars
- •Maximum information: Every data point visible without tapping into detail view
AI Search + Results
C. Minimal Object
- •Single-item focus: One large product image per card, full-width, with text below
- •Section headers: "Trending Now" label with clean separation between content zones
- •Gallery feel: Treats each product as an object to be appreciated, not just data to be scanned
Home Feed + Browse
B+C v2: Carousel + Cards (Final Direction)
- •Hybrid approach: Horizontal carousel for trending items (editorial feel) + card grid for personalized picks (data density)
- •Selective data: Sparklines and deal scores appear on cards where they add value, not everywhere
- •Section-based feed: "Trending Now" and "For You" sections create a discovery-first experience while keeping source counts and scores accessible
Search + Discovery Feed
Design System
The visual language sits at the intersection of two references: SSense's editorial brutalism (stark white backgrounds, restrained typography, product-as-hero photography) and StockX's financial data motifs (deal scores, sparklines, price ranges). The constraint was making these two languages feel like one product.
Color
White backgrounds, black text. Only two accent colors: #00FF66 (green, positive trend / good deal) and #FF3B3B (red, negative trend / overpriced). No gradients, no brand colors competing with product photography.
Typography
Monospace for all numerical data: prices, scores, percentages, source counts. Sans-serif for brand names and product titles. The split makes financial data instantly scannable while product info reads naturally.
Data Visualization
Circular deal score badges, inline sparklines for price trends, and progress bars for market position. Every data point is designed to be understood in under one second.
Microinteractions
Card Press + Save
Long-press to preview, tap heart to save
Toast Dismiss
Swipe-to-dismiss confirmation toasts
Skeleton → Content
Shimmer loading into real results
Filter Sheet
Bottom sheet with haptic feedback
Product Walkthrough
Scour is live and in active development. The MVP launched with real-time search across multiple resale platforms. Here's the full flow, from landing to purchase decision.
1. Onboarding
Set brands, sizes, budget. AI personalizes from first search
2. AI Search
Natural language queries across 30+ sources
3. Browse + Save
Preview details, save favorites, compare prices
Results
Live and deployed, currently web, native iOS via Capacitor is next. The numbers below reflect the current state of the product.
30+
Sources
Major resale platforms + marketplace APIs
0–100
Deal Score
Proprietary scoring on every listing
<5s
Search Time
Across all sources simultaneously
1
Person
Design, frontend, backend, infra
Technical Decisions
Frontend
Next.js, TypeScript, Tailwind CSS, Vercel AI SDK, Three.js
Backend & Data
Supabase, custom data pipeline, Claude API (AI search), Stripe
Deployment
Vercel (hosting + edge functions), mobile-first web → native iOS via Capacitor
Design
Figma (explorations + system), Claude Code (rapid prototyping), HTML/CSS prototypes
Data density vs. editorial feel
Each listing carries 7+ data points. The design explorations were about finding the threshold where information becomes noise. The hybrid carousel+cards approach lets the feed breathe while keeping data accessible.
Normalizing cross-platform data
Every platform structures product data differently. The same item listed on two different marketplaces has completely different metadata schemas. Reliable product matching across 30+ sources required building a custom entity resolution layer.
Designing and building alone
No design critique, no code review, no PM to push back. Prototyping multiple directions (A, B, C, B+C) before committing was how I compensated for the missing feedback loop.
Scour started as a personal frustration and became a full product: design system, data infrastructure, AI search, and a live app architected for native iOS. The biggest lesson: when you own every layer, the design decisions and the engineering decisions become the same conversation. Next: shipping to the App Store and scaling the platform.