The Weekly Buildout
Hey — welcome to this week’s issue of Joe Builds Systems Weekly.
I've been meaning to get consistent with this for a while. Life got in the way, a new 9-to-5 happened, and the newsletter kept slipping. But Listaza just launched, I have some breathing room, and honestly — I have more to talk about than ever. So here we are.
Every week I'll share what I'm actually building, the AI news worth paying attention to, and one honest take on where this is all going. No fluff, no recycled tips. Just the stuff I'm actually thinking about.
Let's get into it.
THE WEEKLY UPGRADE
🧹

Source: Nano Banana Pro 2 / Joe Builds Systems
Three days. That's how long it took to go from a blank Vite project to a live SaaS app with real users signing up.
I want to be honest about what that actually means, because the headline sounds cleaner than the reality was.
The first day was mostly setup and getting the core flow working: photo capture, the AI listing generator, basic UI. That part went surprisingly fast because Claude Code handled the heavy lifting. I was steering, reviewing, and making product decisions. Claude was writing most of the actual code.
Day two is where things got messy. Supabase's Row Level Security policies, basically the rules controlling who can see what data, kept throwing weird errors. It took forever to diagnose because the error messages tell you almost nothing. The auth flow broke three different ways before it worked. And the AI output, the actual listing descriptions, wasn't good enough yet. Too generic, too templated. I had to iterate on the prompts until they sounded like real listings instead of AI-generated placeholder text.
Day three was Stripe. The webhook kept returning 307 redirects instead of 200s, which meant subscription updates weren't writing back to the database. I fixed it. Then it broke again differently. Then I realized the SUPABASE_SERVICE_ROLE_KEY was missing from my Vercel environment variables entirely, which was silently failing every authenticated API call. That one took an embarrassingly long time to find.
But then someone signed up. Someone I didn't know. A real beta user, not a friend or a test account. That was the moment it stopped being a project and started being a product.
By the time we hit 71 founding members, the changelog was already at v1.17.2. Batch mode. Etsy listings. Stripe subscriptions. A help center. A full admin dashboard. Things I didn't even plan for on day one.
The honest version: I couldn't have done this without AI. Not at this speed, not at this scale, not while running a consulting business at the same time. But AI didn't make the decisions. It didn't know that the Stripe webhook was the problem, or that the RLS policy needed a search path fix, or that the listing descriptions needed three rounds of prompt iteration before they were actually good. That part was still me.
If you're sitting on an idea thinking you need more technical knowledge before you can build it, you probably don't. You need the patience to debug things that break, and the judgment to know when something isn't good enough yet.
Listaza is live at listaza.app if you want to take it for a spin.

