A small portfolio, made with care.
Five sites. Five neighbors. Each one shipped, each one earning its keep — the shop, the restorer, the importer, the landlord, the bike shop.
U-Wrench — one shop, two ways to fix it.
A 15-year-old auto shop in Vail with an unusual pitch: rent a lift and tools and do the job yourself, or hand the keys to the ASE-certified crew. Two audiences, one site. We built a custom WordPress theme that lets a DIY-er and a regular customer each find what they need in a click, without the site picking sides.
Full case study →The problem
U-Wrench has been around since 2009, but they’d never had a site that explained the dual model — DIY rental on one hand, full mechanic services on the other. New visitors couldn’t tell which was on offer, and the previous template treated them as the same thing. The shop needed a site that surfaces both paths from the homepage and goes deep on every individual service the crew performs.
What we built
- Custom WordPress theme with split DIY and Automotive Repair tracks, each with its own landing page
- Custom service CPT (uwrench_service) — ten individual service pages (oil change, brake pads, suspension, transmission, diagnostics, …) all editable in the block editor
- Custom testimonial CPT pulling three real customer reviews into a homepage section
- Trust band on the home — 15+ years, 2,500+ cars serviced, ASE certified, 4.9★ — pulled from real shop data, not stock copy
- Mobile-first layout with click-to-call in the masthead and the address tap-to-map (most traffic is en route)
- Local SEO pass for "DIY auto shop Tucson" and Vail-area ZIPs, plus structured-data schema for every service
Where AI did the work
Drafted the ten individual service descriptions from a single conversation with the owner — what each job involves, when a DIY-er should attempt it vs. hand it to the mechanic, what tools are included with a lift rental. Generated meta descriptions across the whole site, then I edited each by hand to match the owner’s voice.
Touchup Maestros — a portfolio for thirty-five years of work.
A 35-year-old finish-restoration firm that touches up wood, stone, marble, and granite for hotels, resorts, and commercial properties across the country. Founder Robert Rauton trained in Paris and opened the Atlanta shop in 1995. The site needed to read like the specialty B2B firm it is — quiet, exact, with the actual property names on the work.
Full case study →The problem
Touchup Maestros sells to hotel and property managers — buyers who already know the trade and want proof of work, not a stock-photo splash. The previous site read like a small local shop and buried the things those buyers actually look for: service categories, maintenance-plan tiers, and the named properties they’ve served. The brand was thirty-five years old; the site read like ten.
What we built
- Custom WordPress theme that telegraphs the firm’s scale immediately — Mohawk Finishing Products partnership, 30+ years, 500+ properties served, nationwide service
- Custom Our Work post type (touchup_work) with named-property entries — Embassy Suites Atlanta Buckhead, Phipps Plaza, Saks 5th Ave, Lenbrook — each with a before/after writeup
- Maintenance Plans page with four contract tiers (1-, 2-, 3-, and 5-year), pitched at property-manager budget cycles
- Industries-served grid (Hotels, Resorts, Condominiums, Office Buildings, Museums, Conference Centers, Country Clubs, Restaurants, Government Contractors) so a buyer sees themselves in seconds
- Block editor configured so the team can add a new completed job — photos, property name, scope, finish — in under five minutes
Where AI did the work
Drafted the case-study writeups for the touchup_work entries from a few photos and a sentence of context per project. Helped translate Robert’s craft vocabulary (color matching, French-polish technique, refinishing vs. restoration) into copy a property manager could read at a glance, then handed everything back for his edit pass.
Tucson Kei — a showroom for the cars, a brief for the work.
Arizona’s only owner-operated Kei dealer — Japanese mini trucks, vans, and SUVs imported from auction in Japan, then fully reconditioned for the Sonoran desert and backed by a 12-month / 12,000-mile labor warranty. The site is part inventory magazine, part trust-building brief: the differentiator isn’t that they import, it’s that they recondition, and every page makes that legible.
Full case study →The problem
Kei vehicles are niche enough that most buyers travel from out of state — for many, the site is the lot. Other importers ship a car from Japan and list it; Tucson Kei tears into every vehicle, replaces fluids and brakes and tires, recharges the A/C for 110°F summers, and warranties their work. The site had to telegraph that difference in seconds, host a real inventory with deep filtering by make/type/condition, and feed listings programmatically from the owner’s sourcing pipeline.
What we built
- Custom WordPress theme with a `kei_car` post type and three custom taxonomies — make (Daihatsu / Honda / Mitsubishi / Suzuki), vehicle type (truck / van / SUV / Jimny), and condition — so visitors can drill in any direction and the URLs match the way enthusiasts think about the cars
- A four-step How It Works section on the home that puts the actual differentiator above the fold: source from Japan auctions → fully recondition in-shop → handle customs + Arizona title → hand over keys with a 12-month / 12,000-mile labor warranty
- Custom kei-car-api WordPress plugin (bearer-token auth, SHA-256 hashing, rate-limited, full request/response audit log) so the owner can push new inventory programmatically — image URLs auto-download into the media library, taxonomies auto-create as new makes appear
- Nine-plus marketing pages that go deep on the things buyers actually ask about — Arizona Kei laws, the reconditioning checklist, parts and accessories, service offerings — instead of one shallow inventory page
- Light Japanese typography on the site (ゴールデンウィーク banner, 軽自動車 footer mark) plus a real Golden Week closure system so the owner can take the week off without anyone wondering why inquiries went quiet
- Site Kit by Google for analytics; Yoast for schema.org structured data on every inventory listing so the cars surface properly in Google’s vehicle-listing results
Where AI did the work
Drafted the model-by-model glossary that helps a first-time buyer tell a Suzuki Jimny from a Daihatsu Hijet, then wrote the reconditioning-checklist copy from the owner’s notes. Generated SEO meta descriptions for every inventory page on import; drafted the Arizona Kei Laws explainer that answers the title-and-registration questions every out-of-state buyer asks. The owner reviewed each piece, in his voice, before it shipped.
Oak Creek Apartments — a floor plan you can actually walk through.
An 84-unit apartment community in Avondale Estates, Georgia, locally owned and managed since 1972. Three floor plans — one, two, and three-bedroom, each offered in Classic and Open layouts — pet-friendly with in-unit washer/dryer throughout. The site had to double as a leasing tool, with a floor-plan tour a prospect can walk through, and as the front door to AppFolio, the platform that actually runs applications, the resident portal, and maintenance requests.
Full case study →The problem
Prospects shopping multifamily housing already expect to tour a floor plan online before they call — a photo gallery and a PDF spec sheet don’t cut it anymore. Oak Creek also runs applications, the resident portal, and maintenance requests through AppFolio, so the site needed to hand off cleanly to a different platform at exactly the right moment, without asking a prospect to go hunting for the right link. And a leasing office answering "are you open right now?" needs an answer that’s actually correct for Avondale Estates, not for whatever timezone the visitor’s browser thinks it’s in.
What we built
- A custom `floor_plan` CPT for the three plans, each carrying Classic and Open layout variants — surfaced to the front-end tour as a single `OC_PLANS` object built server-side from the CPT and its room repeaters, so editing a room in wp-admin updates the interactive tour immediately.
- AppFolio integration resolved through link tokens — `{{apply}}`, `{{portal}}`, `{{maintenance}}` — so every Apply Now, resident-portal, and maintenance-request link across the site points at one configured host, changeable in a single field.
- Server-side address geocoding: an editor types a plain address on the contact page, and a save hook resolves it to lat/lng via OpenStreetMap’s Nominatim and caches it in postmeta — never blocking a page render, never re-geocoding an address that hasn’t changed.
- An open now until… hours calculator that reads the office-hours repeater against the property’s own timezone, so a search from out of state doesn’t get told the wrong thing.
- A tour-request form posted through `admin-post.php`, emailing the leasing office directly rather than depending on a third-party form plugin.
- A vendored Leaflet map on the contact page — tiles from OpenStreetMap, no Google Maps API key to provision or bill.
Where AI did the work
Drafted the floor-plan tour’s room-by-room copy from the raw dimensions and finish notes the property manager provided, and wrote the first pass of the hours-calculator’s day-state copy ("open now until…", "closed · opens tomorrow"). Generated the Nominatim geocoding fallback logic; a human tuned the AppFolio token wiring and the tour-request form’s field list to match what the leasing office actually asks callers.
LoBall Bikes — a shop floor for bikes that already have a story.
A used-and-refurbished bike shop in Tucson that sells, services, upgrades, and takes bikes on consignment — an owner-operated shop that’s explicit about being an anti-racist business and leans into Tucson’s punk and community scene rather than around it. The site had to carry inventory that turns over by the week, a real service-booking calendar, and a journal that reads in the shop’s own voice instead of a stock small-business template.
Full case study →The problem
Every bike on the floor is used and one-of-a-kind — accurate this week, sold by next — and each one needed its own photos and story rather than a generic spec sheet. Booking a service slot needed a real calendar, not a contact-us-and-we’ll-call-you form. And once a bike is priced and photographed for the shop’s own site, re-listing it by hand on eBay, Craigslist, and Facebook Marketplace is the kind of repetitive work that eats a slow Tuesday afternoon.
What we built
- A `bike` CPT for shop inventory and an `event` CPT for community events, plus a `journal_category` taxonomy — Anti-racism, Punk & community, Affordability — that tags journal posts the way the shop actually thinks about them.
- A PhotoSwipe lightbox gallery on every bike’s page, loaded lazily as an ES module — the viewer core only downloads the first time a visitor opens a photo, and each image’s real dimensions are read from attachment metadata up front so the opening animation doesn’t jump.
- The Bike Lister plugin: one click cross-posts a listed bike to eBay through the real Sell Inventory API, and generates ready-to-paste Craigslist and Facebook Marketplace drafts — with a 40-day warning to repost the Craigslist ad before it expires.
- Google Calendar-backed service booking — a week-view availability grid backed by a service-account calendar, so a customer books an actual open slot instead of guessing.
- A booking-email bridge that turns every calendar booking into a notification email to the shop over the same Resend transport that runs the site’s contact form.
- Cache-busting keyed to each asset’s file-modified time, so a CSS or JS edit invalidates its own cache instead of waiting on a version bump someone forgot to make.
Where AI did the work
Drafted the listing-copy templates that Bike Lister fills in for eBay, Craigslist, and Facebook Marketplace from a bike’s existing story and spec fields, and wrote the first pass of the booking-notification email. A human tuned the PhotoSwipe loading sequence and the Craigslist repost-warning threshold to match how the shop actually sells bikes.
Tell us about your business.
A short call, no pitch. If we’re a fit we’ll send a one-page proposal within a week. If we’re not, we’ll point you somewhere good.
Start a project