Petshirts
AI pet art → print-ready apparel - photo to Shopify checkout
- Product
- Brand
- AI
- E-commerce

Product screens
The loop in the hand






Key flow
Pet photo to paid order in about three minutes
Customer
01
Land
The shirt is the pitch. Create starts here.
02
Pick a style
Taste leads. The library is the catalog.
03
Upload the pet
One photo. The pet stays the subject.
04
Preview on a tee
A fast preview on a real blank, so it feels like a product.
05 · Decision
Love it?
Yes goes to garment, color, and size. No makes another take.
06
Cart
Checkout hands off to Shopify.
System
03b · System
Guard, then generate
Turnstile and a rate limit first, then a fast 1K preview.
05b · System
Regenerate
Same pet, same style, a new take.
After payment
07 · System
Shopify checkout
The headless cart hands off to Shopify to pay.
08 · System
Paid webhook
The order lands. The design URL rides on the line item.
09 · System
4K print file
Prepared only after payment. Previews stay 1K so the wait stays short.
10 · System
Print and ship
An operator prints it on a Comfort Colors blank.
States
Keep the joy up while the AI works
Generation is slow, can fail, and is rate limited. Each state keeps the pet in front and offers one next step.
Upload
Photo on its way
The photo shows the moment it's picked. Tips sit under it. The error comes after, not during.
Loading
Painting the preview
The tee and the style are already there, so the wait never looks like a blank page.
Error
Preview failed
The photo stays. The only ways forward are try again or change style.
Limit
Rate limited
The sheet says when it resets, and the designs already made are still there.
Empty
Empty cart
Nothing here yet. The only action leads back to creating a shirt.
Overview
Petshirts turns a phone photo of your pet into wearable art: pick an AI style, preview it on a real garment, choose sizes, and check out through Shopify. Tagline energy: your pet deserves to be on a t-shirt.
I designed and built the storefront, brand system, style/prompt library, admin CMS, and print pipeline end to end - Next.js, Runware, Neon, Vercel Blob, Shopify.
Problem
Pet parents want identity-faithful merch of their animal, not generic stock art. Traditional custom shops are slow or designer-gated; most AI demos stop at a pretty image and never get to print-ready commerce.
Product design
Collapsed the path to ~three minutes: upload → style → garment/color/size → cart → checkout. Previews generate at 1K for speed; after payment a 4K print file is prepared for fulfillment.
- Style-first browse and create flows so taste leads, not SKU grids
- Live flat-lay preview on Comfort Colors blanks (tee, sweatshirt, long sleeve)
- Collections (Bootleg, Gallery, Saturday Morning, Fridge Door, Holiday, Club…) with a prompt library behind the UI
- Headless Shopify checkout with design URLs on line items for operators
Key flow
Three lanes: the customer, the system, and what happens after payment. The customer only makes taste calls - style, love it or regenerate, garment and size. Abuse guards, preview generation, the 4K print file, and the handoff to the operator all happen out of view.
States & edge cases
Generation is slow, sometimes fails, and costs money, so rate limits are real. The states keep the pet and the tee on screen, never lose the customer’s photo or finished designs, and always leave one clear next step.
Brand & craft
Playful pet-parent voice with a loud pink primary, yellow chips, and Unbounded + DM Sans. Marketing sells joy; the product chrome stays quiet so the AI art and garment photos can lead.
Ops & stack
Admin CMS for styles, collections, garments, mockup lab, and landing copy. Abuse prevention via Turnstile and rate limits. Stack: Next.js 15, Runware (Fal fallback), Neon Postgres, Vercel Blob, Shopify Storefront + webhooks.
Outcome
Production-ready private build at petshirts.co - launch-gated while catalog and print ops lock. Portfolio proof of DTC product design where brand, generative craft, and checkout share one seat.