Skip to content

Resale Listing Agent

Turns one to four photos of an item into a condition appraisal, a price range, and listings for eBay, Poshmark, and Facebook Marketplace.

Stack: Next.js 14, React 18, TypeScript, Tailwind CSS, Gemini API, Groq

The problem

Listing used items well means inspecting photos, grading condition, researching prices, and writing a different listing for every marketplace.

How it works

One to four photos and optional seller notes go in. A Groq function-calling agent chooses among five tools: analyze photos, assess condition, suggest a price, generate a listing, and format for each platform. Gemini handles the visual inspection; Groq handles reasoning and writing. The output is a condition grade, flaws to disclose, a price range, and listings for eBay, Poshmark, and Facebook Marketplace.

Decisions

Decisions worth explaining

Two models by job

Gemini for multi-image vision, Groq for fast text reasoning.

Enforced JSON schemas

Enforced JSON schemas at every stage so nothing depends on parsing prose.

In-memory buffer passing instead of LLM payload

Images never pass through the language model: the agent passes a lightweight session ID and the tool code reads raw image buffers from server memory, which avoids huge base64 payloads in model context.

Separation of item analysis and platform formatting

Item analysis is separate from platform formatting, so title lengths and conventions for each marketplace can change without redoing the appraisal.

Status

What's not finished

No accounts or saved history yet; no rate limiting; no check that photos are sharp enough to read tags; no content moderation for prohibited items; sellers cannot edit before posting because direct posting to marketplaces is not built.

Next project