Puzzably: AI gallery walls you assemble yourself

Puzzably homepage

The problem

Wall art is a commodity and puzzles are a commodity, but a set of puzzles designed as one cohesive gallery wall, generated from your own idea, is neither. The interesting challenge was operational: can one person run a physical-goods business where the product is generated per order?

What I built

Puzzably turns any room into a gallery. You describe a visual world, AI generates a cohesive set of 3, 6, or 9 five-hundred-piece jigsaw puzzles designed to hang together as wall art. Each set is printed on museum-grade ESKA board and ships within 7 business days.

It is live, end to end: studio flow for designing your set, Stripe checkout, automated print fulfillment, and transactional email.

How it works

  • Next.js 14 App Router monorepo: marketing site, design studio, and order dashboard in one app, with a separate brand package holding tokens, logos, and a copy bank.
  • A generation pipeline tuned for cohesion: the hard problem is making a 6-puzzle wall read as one body of work, not six random images. Getting there took real iteration; the recipe stays in the kitchen.
  • Physical fulfillment, hands off: payment kicks off print and shipping automatically, webhooks drive order state, and customers get transactional email at every step.
  • Supabase for auth, orders, and migrations; every environment variable validated at startup.
  • Ops as docs: the repo carries deploy and operations runbooks written so a non-developer could run the business. Writing them taught me more about the business than the code did.

What I’m learning

Puzzably is my education in physical goods: the code is the easy half. Print tolerances, fulfillment SLAs, refund flows, and the gap between “image looks good on screen” and “image looks good as 500 die-cut pieces” all had to be learned by shipping. It is also my testbed for programmatic SEO, with content and landing pages generated from the same product data.

Next.js 14SupabaseStripeAIProgrammatic SEO