Storefronts that get out of the way of the product
The best shops feel almost empty. The work isn't to add, it's to clear away. I build storefronts on Shopify, custom Hydrogen, or headless Next.js, depending on what the catalog actually needs.
- +A custom storefront, on the platform that fits
- +A migration plan that preserves SEO and order history
- +Email flows set up, welcome, abandoned cart, post-purchase
- +A simple monthly report on what's moving
- ·Good product photography (or a willingness to invest)
- ·Inventory data, even if it's in a spreadsheet
- ·A point person for buying decisions and copy
What this actually looks like.
Uncluttered storefronts
Big product photography, generous whitespace, type that reads. The product is the headline.
Fast everywhere
Mobile-first, real-world tested. Cart and checkout in milliseconds, not seconds.
Honest checkout
Plain English, no dark patterns, no last-minute upsells designed to confuse.
Inventory that scales
Whether you have 12 SKUs or 1,200, the architecture keeps up.
Email + flows
Klaviyo or Postscript, configured for the kind of conversation your brand actually has.
Analytics you trust
GA4, server-side events where it matters, plain monthly reporting.
How a project moves.
- 01
Listen
Your products, your margins, your fulfillment. What can't change. What might.
- 02
Design
A small set of templates: home, listing, product, cart, checkout. Polished to the corners.
- 03
Build
Shopify theme, Hydrogen, or headless, whichever fits. Migration handled.
- 04
Launch
Inventory imported, redirects in place, soft launch first, then full release.
- 05
Grow
Monthly review of what's converting, what's sitting, what to feature next.
What I usually reach for.
Picked by what fits the project, not what's on the bookshelf.
- Shopify
- Hydrogen
- Stripe
- Klaviyo
- Next.js
- Sanity
- Cloudinary
- Postscript
Let's build your store.
A short paragraph about your products and where you're selling now is plenty.