Case study
Mr. Plastic Repair
A phone-first website for a one-man bumper welding shop in Toronto.
- client · Mr. Plastic Repair
- role · design + development
- oct 2026


01 · The brief
James runs Mr. Plastic Repair alone in Toronto, welding cracked bumpers back together instead of replacing them. His site had great copy, but it buried the one thing customers need to do: send a photo of the damage.

02 · Research
Who's actually on this page?
A driver who just cracked a bumper, standing next to the car, on a phone, often just quoted for a full replacement.
- 01Phone firstMost visitors arrive on a phone, right after the damage.
- 02Quotes start with a photoThe old site hid that step behind everything else.
- 03The copy was goodKeep James's words. No new claims.
- 04Trust needs proofReal before/after photos and real reviews.
03 · Design
One page, one ask: “Send a photo for a quote.”
Every section either builds trust for that ask or repeats it.
palette
- #DCE6FF
- #7C97F0
- #3E5BD0
- #1C2AA8
- #F7BE00
- #FFFFFF
- #000000
#DCE6FF · #7C97F0 · #3E5BD0 · #1C2AA8 · #F7BE00
type
Half Day Bumper
Anton for headlines, outlined pills for buttons
tried vs. chose
photo hero
big wordmark + stickers
A one-person shop needed to look like a confident local brand, not a stock-photo garage.
our work · old vs. new
swipe on phones · arrow keys on desktop


04 · Build
From cracked bumper to WhatsApp chat.
The form saves the photos, then opens WhatsApp with a ready-made message to James. No paid messaging API, no fees, and James gets the customer's number automatically.
- step 1Upload photos
- step 2Name + phone
- step 3Send to James
- step 4WhatsApp opens
- step 5James replies
Built with
- React + Vite + TypeScript
- pre-rendered homepage
- Hono API
- Cloudflare Workers
- R2 · photos
- D1 · enquiries
- Access · /admin
05 · Final screens
The result



A phone-first site where a customer goes from a cracked bumper to a WhatsApp chat with James in a few taps.
$0 / mo
only the domain costs money
his name
every account is James's, so handover is just removing my access
Status: working demo, going live once James is ready to launch.
Keep exploring