← All Posts
9 min readAI & DesignDesign ProcessPersonal

I Built This Website With AI. Here's What Actually Happened.

Instagram will tell you it takes three skills and an afternoon.

It doesn't.

I built this website — the one you're reading this on — using a stack of AI tools I'd never touched before, a Terminal window I kept open for weeks, and a steep learning curve I wasn't warned about. It took multiple sessions spread over several weeks. It involved real bugs, real confusion, and more than a few moments where I had absolutely no idea what I was doing.

It also produced something I'm genuinely proud of. That's the honest version.

Starting from zero

Let me be clear about where I started: I am a designer, not a developer. I had never used most of the tools involved in this build. I didn't know what a CDN was in practice. I'd never pushed a commit from the command line. I didn't know GitHub Desktop was even a thing. The terminal was something I'd opened maybe twice in my life and immediately closed.

The learning curve was steep. Not brutal — but steep. And the content creators who skip that part are doing you a real disservice.

What I actually used — and what each thing does

Claude Cowork is the AI workspace I used as the primary interface throughout the build. Think of it as a persistent creative director's assistant that can read and write files in your project, run commands, and maintain context across long sessions. It was the central nervous system of the whole operation.

Claude Code is the underlying engine that handles the heavier technical work — reading and editing files, running terminal commands, managing the codebase. It's what makes Cowork capable of more than just conversation.

Next.js is the framework the website is built on — a tool for building fast, modern websites using React. I didn't choose it. Claude recommended it as the right foundation for what I wanted to build, and I trusted that.

Vercel is the platform that hosts the website and deploys it automatically. Every time I pushed a code update, Vercel rebuilt and published the site within minutes. I didn't configure this — I followed steps and watched it work.

GitHub / GitHub Desktop is how code gets saved and published. GitHub stores every version of your project. GitHub Desktop is a visual app that lets you push those updates without writing command-line instructions. I didn't know it existed until Claude told me to use it. It became the last step of almost every session: Claude finishes a task, I open GitHub Desktop, I push. Done.

Cloudinary is a cloud service that stores and delivers images. Rather than hosting hundreds of megabytes of portfolio images on the website itself — which would make it slow — images live on Cloudinary's servers and load via a fast global network. Setting it up required uploading images via an API. I didn't write the script that did that. Claude did. I ran it.

Terminal is the command-line interface on a Mac — a text-based window where you type instructions directly to your computer. I used it to run those scripts, install packages, and do things the visual interface couldn't. Every time I opened it I felt slightly out of my depth. By the end of the project, slightly less so.

The plan I didn't have to write

Here's what surprised me most about working with Claude Cowork: I didn't have to figure out what to do next.

At the start of the project, Claude generated a structured task list — every step needed to go from a blank Next.js project to a fully deployed website, in the right order, with the right dependencies. Dozens of tasks. I just had to follow them. When one was done, Claude marked it complete and we moved to the next.

That sounds simple. It was transformative. One of the hardest parts of any solo project is knowing what to do next. That problem disappeared. I showed up, Claude had a plan, we executed.

When I got stuck — which happened regularly — it didn't just answer the question. It explained what was happening and why, put the problem in context, and told me exactly what to do. When I had no idea what a terminal error meant, Claude translated it into plain English and fixed it. When I was completely lost, it got me back on track without making me feel like an idiot for not knowing.

The bugs. Oh, the bugs.

This is where the "three skills and you're done" narrative falls apart completely.

Logos that vanished after every deploy. Every time I pushed an update to GitHub, my logo files disappeared from the live site. The site looked fine in development, broken in production. The cause: a single line in a configuration file was telling git to ignore the entire images folder, so those files never made it to the server. The fix was precise and surgical. Finding it took real debugging.

Twenty broken portfolio images. The case study images on my portfolio pages were all returning errors — images I'd referenced in the code that were never actually uploaded to Cloudinary. Fixing it meant hunting through local folders, discovering one image was genuinely missing, finding a substitute, and uploading everything through the API script Claude had written. Not glamorous. Necessary.

A token problem I created myself. Early in the project, I was using Claude Opus — the most powerful (and most expensive) model in the Claude lineup. I didn't know there were different models, or that the choice mattered. I burned through a significant amount of tokens doing things that didn't require that level of capability. When I finally switched to Claude Sonnet, the results were essentially the same. The lesson: understand your tools before you max them out.

None of these problems were catastrophic. All of them required understanding what was happening, not just following instructions blindly.

What AI tooling actually is

Not an autopilot. A capable collaborator that still needs a human in the loop.

It executed faster than I could have imagined — components, animations, security configuration, analytics setup, all in a fraction of the time a traditional development engagement would take. It remembered the brief, applied it consistently, and caught things I would have missed.

What it couldn't do: make decisions I hadn't thought through. Know which of my images were missing before I pointed it in that direction. Understand the broader strategic intent behind the project without me explaining it. The quality of the output was directly tied to the quality of my direction.

The metaphor that stuck: I was the creative director. Claude was the most capable, fastest studio team I'd ever worked with. But the brief still came from me. The decisions still came from me. The judgment calls — what belonged, what to cut, what needed another pass — those were mine.

What it produced

A Next.js site with a full design system, a horizontal-scroll services experience, a draggable image gallery with animations, a complete blog, case study pages, security configuration, analytics, and a deployment pipeline that auto-builds on every push to GitHub.

In weeks, not months. Without a developer on retainer.

That's real. I'm not hedging.

The honest verdict

If you're a non-developer with no terminal experience and no familiarity with how websites are actually built, this will be harder than you've been told. There's a learning curve. You'll hit moments where you need to understand what's happening — not just copy and paste instructions. The tools are remarkable. They are not magic.

If you're a designer with a clear vision and the willingness to stay in the loop, this is genuinely the most significant shift in what's possible for a solo creative. The gap between what you can imagine and what you can actually build has never been smaller.

But close isn't zero. And nobody on Instagram is talking about that part.