Joseph Wheeler

Internal preview · not taking orders

DesignMyPolo

Paste your website. See your team's polo.

Reads a company's website (its logo, brand colors and line of work) and draws three original all-over-print polo patterns on a photoreal shirt.

designmypolo.com
DesignMyPolo's demo window: a roofing company's website has been read into its logo, brand colors and industry, with a pattern tile, a polo wearing it and three concept thumbnails.
from the first engine brief to a live preview
5 days
original concepts per company website
3
one slow test case after caching and fail-fast work
61.7s → 2.8s
hard daily spend cap on the public preview
$5

The problem

Custom team apparel usually means briefing a vendor by email, waiting days for proofs, revising over email, paying a design fee and chasing sizes in a spreadsheet. A company's website already holds most of what a designer needs.

What it does

  • One URL in, three pattern directions out: no form to fill, no design meeting.
  • Tune it yourself: colors, a Mild-to-Wild busyness dial, style, colorway, garment and your own logo upload.
  • A team size link where everyone picks their own size, built around a 20-piece minimum (checkout is a mock during the preview).
  • Previews are view-only and watermarked. Industry landing pages carry real tool output, never placeholder shirts.

Decisions that shaped it

  1. The product is the proof

    The homepage demo is a replay of a real read, and every shirt on the site is the tool's own output. No placeholder shirts and no stock mockups.

  2. Draw from the customer's brand, not an image model

    Claude reads the site. Patterns are built from the company's own logo and colors plus icon libraries, not generated raster art. That keeps results on-brand and gives the engine vector artwork it can turn into print files.

  3. View-only previews

    Customers can explore freely but cannot download artwork. The design is the thing being sold.

  4. Safe to leave on the open internet

    The engine fetches arbitrary URLs, so every fetch is checked against SSRF. Each visitor gets a few new reads a day, a hard daily spend cap sits behind that, and the preview is noindex.

  5. Speed is a feature

    Cold reads of some sites were far too slow. Caching and failing fast on dead ends took one test case from 61.7 seconds to 2.8.

Another look

designmypolo.com
DesignMyPolo's three steps: paste a website and see the logo, colors and industry it found; pick one of three pattern styles; collect team sizes against a 20-piece minimum. The ordering flow is a mock during the preview.

The ordering steps are a mock during the internal preview. Nothing is charged and no orders are taken.

How it was built and checked

  • Built as a graph of bounded loops with written contracts and independent verification passes.
  • Mutation testing checks that the tests themselves catch planted bugs; one print-file suite caught all 33.
  • Site changes run scripted browser checks at desktop and phone width.
The method in full

Stack

PythonClaude APIFly.ioVercelBrowser tests (CDP)