gotcb.comBash · Build · Go
Customer · Memphis · Oxford

Primero Paint

A Nashville business card the owner could not stop thinking about: housepainters.com — we're damn good at painting houses. The whole brief in eight words. The site is the rest.

Client
Primero Painting & Drywall
Industry
Paint and drywall · Mid-South
Stack
Lovable · Supabase · pgmq · React Email · Resend · Twilio
Live at
primeropaint.com
A painter's worn hand with a sash brush painting the white trim of a Memphis bungalow porch.

The problem

The homeowner whose trim is peeling has been burned by contractors who do not call back. The landlord with a make-ready and a 7-day window has been burned by quotes that arrive after the tenant moves in. The Airbnb host between bookings cannot afford a week without revenue. The Ole Miss parent with a rental in Oxford has no plan to drive down and vet five painters in person.

They are not looking for a different life. They are looking for a painter. Someone who shows up when they said they would, who tells them the number before the truck pulls away, and who does not disappear after the deposit. Most contractor websites are sliders and badge rows and credentials walls — written by someone who has never had to call a painter back.

The harness

A quote form that captures enough to estimate in two minutes — service, address, photos uploaded straight from the customer's phone. A submit-lead edge function with Zod validation and a parallel notification to taylor@tcblaw.org and tcbmem@gmail.com. The pgmq-backed transactional email pipeline behind it — queue, retries, DLQ, suppression, RFC 8058 one-click unsubscribe wired into the React Email template. An admin pipeline at /admin with a real status machine: New → Ready to Quote → Quote Sent → Scheduled → Completed. Photos and a phone number visible on every page. The five-segment customer band ("homeowners, landlords, Airbnb hosts, property managers, realtors, small offices, Ole Miss parents — same job, different reasons") set in body type. No icon grid. No certifications wall.

The result

Leads come in with photos already attached. The quote goes out within hours. The pipeline carries the job from inquiry to completion without anyone losing it in a thread.

The next ship is the annual touch-up email — one plain email, 365 days after the Completed timestamp, signed by a real name, asking if a doorframe or porch ceiling needs another look. Two buttons. No discount theatre at the bottom. Memory like a witness. After that: the property file — a one-page PDF for every completed job with colors used, brand, sheen, square footage, notes from the crew. The customer can hand it to the next owner when they sell. That single feature is the difference between "a painter" and "my painter."

The phases
01 · Audit
Looked at the form first.
The quote form was already doing the work. Tightened it.
02 · Wire
Wrote the pipeline before the page.
pgmq queue, retries, suppression. The page can drift; the leads do not.
03 · Hand off
Cut the trust-bullet block.
The form is the trust signal. Five gold checkmarks were contractor-marketing chrome.