Claude Code wrote every line of code on this site. I wrote none of it. What I did instead was create accounts, click confirmation links, paste secret keys into the right boxes, and spend an entire night discovering that my actual problem was Google Drive.
I started with a domain and an idea, which turned out to be about a third of what you need. I ended up with four new accounts. GitHub to store the code. Vercel to put it online. Sanity so I can change the words without opening the code and breaking something. And Resend, so the contact form can send you a message without my email address ever appearing on the page, because the moment it does, bots harvest it and I spend the rest of my life being offered SEO packages and miracle backlinks. All of them free, all of them friendly, and all of them with their own login I will be continuously resetting going forward.
Each one hands you a secret key and cheerfully tells you to put it in your .env.local file. I did not have an .env.local file. I had never heard of an .env.local file. So I made one, filled it with the crown jewels, and roughly a minute later learned that its contents must never ever, under any circumstances, end up on GitHub.
Before any of it could run, there was a round of installing things on my own laptop. Node, Git, Python. I still couldn't tell you what Python is doing in there. Claude Code told me what to download, activate and type, I did, it worked. That is more or less my entire relationship with the technical side, and I've stopped pretending otherwise.
The Google Drive evening
My project folder was in Google Drive, because all my folders are in Google Drive.
Installs failed. Then failed again. Red text, line after line, for hours, while I slowly worked my way towards the conclusion that I was the idiot here. I wasn't, for once. Google Drive quietly syncs files in and out underneath you, and the tools that install and build a website hate that with a passion. Ticking "available offline" helped in seconds.
Nobody warns you about this anywhere. So now somebody has.
A genius that can't be left alone
Set Claude Code off on something big, walk away, come back an hour later expecting a finished feature. It stopped after nine seconds. It is waiting, politely, for me to approve something technical that I had no chance of understanding, which meant my considered answer was always going to be "Allow" anyway. An hour of nothing, so I could rubber-stamp a question I couldn't read.
The cure is a setting called "Allow bypass permissions mode", described with reassuring words like data loss, system corruption and exfiltration attacks. I read the warning properly, thought about it, and turned it on anyway. The alternative was standing guard over the thing in case it needed help locating the OK button.
Going live, by the way, means copying odd little strings into whoever sold you the domain, then refreshing a page for twenty minutes while the internet decides whether to believe you.
So, was it worth it? Absolutely. To be fair to the alternative, I could have opened WordPress, installed Astra like everybody else, and been finished before lunch, and every single problem above would simply not have happened. But then I'd have learned nothing, and the site would look like Astra. This way was harder work, considerably more fun, and I now understand every corner of the thing because I watched it get built and asked an embarrassing number of questions along the way.
Four things I'd do before writing a single line next time
- Ask Claude Code what it needs, before anything else. Not just "what should I install", but the full list: which services you'll need accounts with, and what has to be on your machine. Then sign up for all of it and install all of it in one sitting. Half my evenings died to stopping mid-flow to create an account and wait for a confirmation email.
- Keep the project folder off cloud sync. Not Google Drive, not Dropbox, not OneDrive, not iCloud. Put it in a plain local folder. If it has to live in Drive, tick "available offline" before you start, rather than six hours into the red text.
- Decide the permissions question up front. Either accept that you're babysitting and stay at the keyboard, or read the warning on bypass mode, decide you're comfortable with it, and switch it on. Deciding halfway through costs you exactly the time you thought you were saving.
- Ask about secrets before your first commit. Get Claude Code to confirm that
.env.localis ignored by Git before anything goes near GitHub. I'm still not entirely sure what goes wrong if it doesn't, but everyone agrees it is very important, and that's good enough for me.
The building and the admin don't take turns, by the way. They run in parallel, and the admin is the half you can't delegate. Claude Code will happily do all the work, right up to the point where somebody has to be a human with an inbox, an opinion and a functioning pair of hands. That somebody is you.
