Inspiration

Ever start a new project and get stuck in analysis paralysis? Especially if you are trying something new, like building a PC or a home gym for the first time, planning what to shop for to complete certain tasks or projects can get stressful and time-consuming.

We wanted a friend who has read every spec sheet and shops alongside you. Gomdori (곰돌이), stylized gomdori for our project, is Korean for "teddy bear", and that's who he is: a small bear in your browser's side panel.

What he does

  1. Plan. Tell gomdori what you're building, like "a gaming PC for $600". He turns that into a checklist of parts, each with its own budget. If you leave out something he needs, like the budget, he asks.
  2. Evaluate. Shop on Amazon as usual. On any product page, gomdori scores the product from 0 to 100 against everything already on your list. Every point he takes off comes with a plain reason, like "The AM4 Ryzen 5 5500 won't fit this AM5 board."
  3. Better options. If the score is under 100, gomdori finds better-fitting products and shows each one's score, rating, and price difference.
  4. Other stores. He also checks live Google Shopping results for the exact same item at stores like Newegg, Walmart, and Target, so you know whether Amazon is the cheapest.

He works for anything where products depend on each other: PCs, cameras and lenses, home theater, desk setups.

How we built him

  • Chrome extension (WXT, React, TypeScript). A side panel next to the real Amazon page reads the full listing: title, price, spec table, bullet points, stars, and rating count. We designed the panel in Figma, built a working prototype with Figma Make, and built from there.
  • Server (Python, FastAPI). Four endpoints: plan, evaluate, better options, and other stores.
  • Claude (Opus 5.5, Anthropic SDK) is the judge. He plans the checklist, decides whether a product fits the part's requirements, and checks it against each item already on your list. Each verdict is one of fits, conflict, or not confirmed, with a one-sentence reason.
  • The score is computed in code, not by the model. Each check takes fixed points off: the wrong kind of product −80, a conflict with your setup −40, over budget −10 or −20, weak reviews −5 or −15, and anything not confirmed −10.

$$\text{score} = \max\Big(0,\ 100 - \sum_{\text{checks}} \text{penalty}\Big)$$

The same checks always give the same score, and you can read the reason for every point.

  • Apify searches Amazon for better options and returns their spec tables and review data, so Claude's reasons cite the actual listing.
  • Bright Data (SERP API) pulls live Google Shopping results for the other-stores price.

Challenges we ran into

  • Making the score trustworthy. When we asked a model for a number, we got a different number each time. So we split the job: Claude gives verdicts with reasons, and plain code turns them into points.
  • Messy web data. A Google Shopping search for "Ryzen 5 5500" also returns the 5500GT, refurbished units, bundles, whole gaming PCs, and a suspiciously cheap listing on a music school's website. We keep only known stores in code, then Claude picks out the exact same item.
  • Blocks and slow answers. Live searches sometimes come back empty or blocked. We retry with a different query, stop after 30 seconds, and if the stores still don't answer, the panel says so instead of showing made-up prices.
  • Reading Amazon. Product pages vary a lot. On many, the first price we read was blank, and the next price on the page was the crossed-out list price. We now read the price Amazon actually charges.
  • Speed. Finding better options takes 15 to 30 seconds, so the score shows first, and better options fill in below it a few seconds later.

Accomplishments that we're proud of

  • In our $600 gaming PC demo, gomdori catches an AM5 motherboard paired with an AM4 CPU (score 50) and suggests an AM4 board that scores 100 and costs $15 less.
  • With no code written for cameras, he caught a Canon lens on a Sony camera (score 60) and suggested lenses that fit.
  • Every point off the score comes with a sentence anyone can understand.

What we learned

  • Let the model judge and let code count.
  • Live web data is messy. Most of the work is cleaning it up, and being honest when he doesn't come back.
  • Designing in Figma first gave the whole team the same picture of the panel before anyone wrote code.

What's next

  • Voice requests: "I want to start streaming, and my budget is $1,000."
  • Rebalancing budgets: when one part goes over, shrink what's left for the others.
  • Evaluating products on other stores, not only Amazon.
  • Shared lists, so a family or a team can plan a project together.

Built With

Share this project:

Updates

Submission history