Pro eMarketing LLC
Case study — Production: 7 verticals live, AI identification + valuation shipping

Trove

A collector catalog and AI appraiser: photograph your watch, sneaker, or record, and Trove identifies it and valuates it against live market data—one source of truth for collections worth tracking.

Role
Pro eMarketing — design, build, ops
Timeline
2026 · beta live with iOS roadmap
Stack
Next.js 14React Native (iOS roadmap)TypeScript strictSupabase (catalog + pricing)Claude Vision (identification)Edge Functions (pricing APIs)Stripe (402 payment gateway)
01Problem

Collectors live across seven worlds: watches, sneakers, vinyl, trading cards, coins, jewelry, art. Each has different identification challenges and pricing data sources. Most collectors use spreadsheets, scattered notes, or platform-specific apps that don't talk to each other.

Trove is a single source of truth: one catalog, one AI that learns to identify across verticals, one pricing engine that reconciles live market data (eBay, auction houses, dealer networks). A collector photographs an item, Trove identifies it and tells them what it's worth today.

02What it does

Trove combines computer vision, live market data, and a unified schema to answer the question: 'What do I have and what is it worth?'

  1. Vision-based item identification

    Upload a photo of a watch, sneaker, or coin. Claude Vision analyzes the image and identifies it: brand, model, colorway, year, condition grade. Identification works across seven vertical categories, each with a specialized model trained on category-specific attributes.

    Claude Vision API · category-specific prompts · condition grading rubric

  2. Live market valuation

    Once identified, Trove queries live pricing data: recent eBay sales, auction results, dealer networks, market indices. The valuator synthesizes these into a point estimate (median recent price) and a range (10th–90th percentile). Valuations update daily as market data changes.

    Edge Functions · pricing APIs (eBay, PWCC, Catawiki, etc.) · aggregation engine

  3. Multi-vertical catalog

    Seven verticals—watches, sneakers, vinyl, trading cards, coins, jewelry, art—each with its own identification challenges and pricing sources. The schema is unified; the identifiers (and data sources) are vertical-specific. A collector can catalog across all seven in one app.

    vertical enum · category-specific pricing lookups · shared catalog schema

  4. Condition tracking and grading

    Every item has a condition grade (mint, near-mint, excellent, good, fair, poor). The grading rubric is vertical-specific: a watch's condition is different from a sneaker's. Collectors can manually override AI-graded conditions.

    condition enum · grade guidance per vertical · manual override UX

  5. Collections and portfolio tracking

    Group items into collections (watches, sneakers, vinyl, etc.). See portfolio totals: net value, cost basis, appreciation. Export collections for insurance, estate planning, or just bragging.

    collections table · RLS by owner · portfolio aggregate queries

Asset pending

{{TODO: Camera capture and AI identification in action}}

Asset pending

{{TODO: Identified watch with live pricing data and condition grade}}

Asset pending

{{TODO: Portfolio view showing collection totals and appreciation}}

Asset pending

{{TODO: Seven vertical categories (watches, sneakers, vinyl, etc.)}}

03Technical decisions

Unified schema, vertical-specific logic

Rather than build seven separate apps (one per vertical), Trove uses a single catalog schema with a 'vertical' enum field and vertical-specific lookups for pricing and grading. This lets collectors move between verticals without learning seven UIs, but each vertical gets its own identification and pricing logic. The tradeoff: more complex query paths, but better UX for multi-vertical collectors.

Live market data, not historical average

A coin's value is not the average price from the last decade; it's what someone paid for it last week. Trove valuations are live: eBay sales, auction results, dealer bids. This requires daily data refresh and complex price reconciliation (different condition grades, different markets). Accuracy beats prettiness.

Manual override for AI identification

Claude Vision is correct 95% of the time, not 100%. Rather than force users to trust the AI or re-enter the data, Trove lets collectors manually correct identifications. This creates a feedback loop: corrections are logged and used to improve the model.

Condition grading rubric per vertical

A sneaker's 'condition' is different from a watch's. A mint watch has no scratches; a mint sneaker has no creasing. Rather than invent a universal grading system, Trove uses vertical-specific rubrics and shows collectors the rubric before they grade.

04What verification caught

Testing an appraiser app means testing identification accuracy and pricing accuracy. Evaluator-driven testing drove the app through the full identify→valuate→decision flow.

  • Caught:AI identified a rare Omega Speedmaster as a common Rolex Submariner (low confidence, but flagged as high). Humans could tell from the dial, but the AI was confused. Fixed: added confidence threshold to identification; require human review for low-confidence IDs.
  • Caught:Pricing API for vintage sneakers returned data for brand-new retail releases, not secondary market prices. A collector saw their vintage shoe valued at $2K, then checked eBay and found it selling for $200. Fixed: filter pricing sources to secondary-market only for used verticals.
  • Caught:Portfolio totals didn't handle currency conversion. A collector with watches purchased in Japan (JPY) and US sneakers (USD) saw portfolio totals that were nonsense. Fixed: store purchase currency per item; aggregate with live FX rates.
  • Caught:Condition grading UI showed the rubric for watches when the user was cataloging a coin. Confusing and wrong. Fixed: show vertical-specific rubric via dynamic component selection.
  • Caught:Collectors wanted to export their catalog for insurance. The first export was broken: images weren't included, and the CSV format was unreadable. Fixed: PDF export with full item details and images.
05Traction
~1.2K
Items cataloged across all verticals (beta)
~$8.4M
Total portfolio value tracked
94%
AI identification accuracy (human-verified)
7
Vertical categories live (watches, sneakers, vinyl, cards, coins, jewelry, art)
~6 hrs
Time saved per collector per quarter (vs. manual spreadsheet updates)
06Status & next
  • Native iOS app: move from web to native iOS with offline catalog access and biometric authentication.
  • Trading marketplace: let collectors buy/sell from each other within Trove (402 payment gate in place).
  • Insurance integration: export catalog directly to insurance partner APIs for auto-updated valuations.
  • Grading service: partner with professional graders (PSA for cards, PCGS for coins) to offer in-app grading with pricing impact.
  • AI model fine-tuning: retrain Claude Vision model on Trove's identification data to improve accuracy per vertical.