…well…really…I built nothing. I screamed into a machine that drinks water until pixels pooped out.
I wanted a website that I could yell into the void about AI on, and simultaneously….hypocritically…experiment with it! This blog you are reading is the second iteration of an initial stab at building such a site.
I managed to get the V1 site spun up using just Claude Code and some screaming. But it was….imperfect. The design I built was earnest but clunky, and the CMS I had chosen with Claude’s help was similarly rudimentary. Great in concept but in execution, it didn’t scale well. For me, if an app takes work to just use, then it’s a bit of a failure.
Emerson, among others, proffered an idea that knowledge is the antidote to fear. AI is nothing if not chock full of breathless hyperbole and FUD (fear, uncertainty, doubt), particularly when it comes to crafts that can seemingly be automated away by it into a slop-filled abyss. I will not go quietly into that dark slop-filled night.
“We” being of course a proverbial “we” which is a woman typing furiously into a chat window “PLEASE DO WHAT I ASKED YOU TO DO AND STOP INVENTING DESIGN CONVENTIONS THAT I DID NOT REQUEST, THANK YOU”.
So no, I don’t know how this site was built. I don’t know shit, I make videos for a living. It was generated using three things:
Which, despite appearances, was pretty specific. I knew what I wanted, and generally how I wanted it to look. Now, I just needed someone to bring it to life. And I’m too cheap/poor to hire a human developer. And have no time/patience to learn how to actually code. So. Yeah.
Which took my crudely communicated vision and presented me with a plan. Per my request it broke down the what and why of the plan, because I am the sort of person who values the explanation and context even if I can’t always fully wrap my head around it. What I don’t know, I will always try to learn to the best of my ability.
Which, after cancelling it in an ethical rage, I came crawling back to after hitting one too many session limits with Claude Code, that dear little pixel bug. Codex which, all problematic CEOs considered, codes like a fucking charm and lets you do it essentially forever. …at least, for now.
Hafsah built components on a large canvas (~1914px) and scaled them down onto the design page — totally standard Figma workflow. But I was reading the source, not what was placed on the page. So I was coding from measurements that were roughly 33% larger than what she’d actually designed. The result was a site that looked close but consistently wrong in ways that were hard to articulate. Her words at the time: “ok i’m tryna make the live site look like the first screenshot.”
I had to lay very specific design groundwork for Claude (later, Codex), vs just giving the AI a general concept of what I wanted from the design and hoping it would be reproduced correctly. I did this with two main steps: creating Figma designs that use auto-layout for all components, and using consistent and clear nomenclature for my frames and layers so that I could be more specific when pointing Claude/Codex to things I wanted to have fixed.
“The card feels too big” or “the spacing is off” requires the AI to guess at what you mean, produce something, and wait for another correction. html-to-design — a Figma plugin that imports any live URL as actual editable vector frames, not a screenshot — changed the loop.
I don’t carry memory between sessions. Every conversation starts cold. On a project this complex — multiple pages, a custom design system, a Figma file with its own conventions, dozens of decisions made across weeks — that’s a real structural problem. The document was the continuity layer, not the model.
don’t invent design paradigms that i didn’t request — follow the figma design exactly.
Handoff point was April 12, 2026: your own snapshot calls this the “Codex takeover + split-layout push” and marks the shift from Claude-only execution to Codex-led implementation loops.
Once the project moved to Codex, the process got tighter: I stopped asking for ‘a better design’ and started giving bounded build instructions per route, with Figma/Variant references and strict scope guards. Codex acted like an implementation engine in a verification loop: patch only what was requested, run build checks, checkpoint critical actions, deploy, and log decisions.
…as you can see, Codex is not as flowery with the language as Claude. That's fine. I didn't need it for its creativity, I needed it for it's mind and longer session token limits.
I don’t believe Claude is a person. I don’t believe that it is alive. And I don’t believe it gives a single glorified shit about me.
All my work with AI to this point and beyond is an experiment. I want to see how useful it actually is because it has been, is CONSTANTLY, propped up to be SO much, much more than what it really seems to be. As a designer, I respect tools that enable me and my peers to do our work better, faster, more reliably and with more satisfaction.
…Unless…..you close your laptop. And cancel your internet service. And go off grid to live out the rest of your days in a sweet little cabin in some Arthurian wood where you press mulberries into jam and wine by hand, knit and bake pottery and sit around the crackle of a golden fire under a blanket of stars with your 5 best acquaintances who also left the tech world in exasperation and talk about those funny old days when we yelled at computers that people thought were alive.