02 / Applied AI & software
Relist
Turning clothing photos into evidence-aware resale listings, with human review built into the workflow.
Useful AI needs a review step.
Relist turns clothing and tag photos into structured listing facts, editable descriptions, and a suggested price. I built it to make the repetitive parts of resale listing easier while keeping uncertain details visible and the final decision with the seller.
A Next.js interface handles photo intake and review. Behind it, a Python and FastAPI pipeline checks image quality, calls the OpenAI Responses API, validates the proposed facts, and prepares the approved listing for export.
What I built
- Evidence-aware extraction. Model-proposed facts include confidence and photo provenance. Validation blocks unreadable tags and preserves unknown or conflicting details for review.
- Deterministic marketplace mapping. Category is resolved before size. Versioned vocabularies map fields to Depop values, including jeans waist/inseam parsing and brand aliases.
- A review and approval interface. Sellers can edit facts, listing text, and price. Edits pass validation again before approval and local saving.
- Repeatable export. Approved photos are hosted on Cloudinary with content-derived IDs and caching. The export preserves the required leading rows of Depop’s version-6 CSV template.
Separate prediction from validation.
Image analysis, fact checking, listing text, and model-assisted pricing have separate responsibilities. The model suggests; deterministic checks decide whether those suggestions are valid enough to move into review. Provider requests use strict structured outputs and bounded retries.
The workflow ends at export. Relist produces a CSV for manual import into Depop’s Selling Hub. It does not publish listings automatically. Prices are model suggestions, rather than researched marketplace averages.
Demo & verification
Watch the one-minute demo to see photo intake, review, and CSV export. The app runs locally; the recording can be viewed without configuring the app.
The repository documents 150 passing offline tests covering photo handling, fact validation, pricing, saving, and export, along with a successful frontend production build. Provider responses were simulated for those tests; they do not establish live model accuracy or speed.
Read the implementation, setup instructions, and project tradeoffs on GitHub.