It seems like the right time to clean up a bunch of my online presence. My domain is primarily used for email, but maybe it’ll be fun to cross-post stuff I put on LinkedIn to my social feeds (which are almost unused).
So I put Claude Code on a free tier server that has been running my Matrix homeserver, gave it sudo, and told it to get me set up with a Mastodon server, and a Bluesky server, and plan the migration of my existing Mastodon account.
It nailed it. While I’d have preferred it to dockerize it all (though I didn’t tell it to), it got everything installed, spun up, and gave me clear instructions on the manual steps to take.
With the social servers sorted, I figured it was time to tie my domain into a simple GitHub Pages site with a static site generator. I started on blog.rishim.com, realized I still had rishim.com pointing at Friday Deployments, and that it was going to be a bit more involved.
So I renamed the repo, and told Claude to sort it out. The repo contains an untested GitHub Actions deployment for blog.rishim.com.
My entire prompt at this point is about as half-assed as the rest of this plan:
“We’ve got a template here for a static site generator. There’s some configuration needed I think to finish out the first deployment.
The code in here is to be deployed to GitHub Pages, and under the domain blog.rishim.com. This is still what we want, however we’ll also need rishim.com to have its own page, and link to the blog, as well as to https://fridaydeployment.co and https://gethypeup.com
Please reconfigure whatever is needed in the code to support all of this. Ensure blog.rishim.com loads correctly, and has the posts here. Create the page for rishim.com. Update any YAML as needed, and iterate by pushing to main until the site is finished. Note that DNS records have been updating, but TTLs are still expiring.”
The interesting notes:
- GitHub Actions was down, and Claude picked up on this.
“Both repos have queued runs stuck for ~5 minutes. Let me check GitHub’s status.
GitHub Actions is currently experiencing a major outage (as of 22:54 UTC today). That explains why runs are stuck and new ones aren’t being created. We’ll need to wait for the outage to resolve.
In the meantime, let me verify all the code is correct and ready so once Actions recovers, deployments will go through. Let me also check the Pages custom domain configs.”
- Intentionally, Claude has access to the
ghCLI. I actually prefer this to be a single repo, but I’m not sure GitHub Pages supports that.
“There’s only the
rishim.comrepo. For the landing page, I need a separate repo. I could createogreface/rishim-landingorogreface/rishim-home. Let me create a new repo. Actually, wait. GitHub Pages for user/org pages are served from the<username>.github.iorepo. For project pages, each repo gets its own subdomain under<username>.github.io/<repo-name>. But with custom domains, you can point any domain to any GitHub Pages site. So I can create a new repo (e.g.,rishim-landing) and configure it with the CNAMErishim.com. I’ll build a minimal landing page with links to the blog, fridaydeployment.co, and gethypeup.com, then deploy it via GitHub Pages.”
After 44 minutes and 22 seconds of Claude chewing through things, it’s done.
https://rishim.com/ is now back up and running, and deployments seem to work. I still have to tie together the process and fully automate it, but it works enough for tonight.
It’s funny to see how AI creates UI/UX stuff when there’s no real detail — the copy, design, etc. is just what it came up with. I’ll talk about how it built the HypeUp UI next time!
The tl;dr lesson here (which I’ve learned a few times): be as specific as possible. In these cases, I intentionally left things out to see how it would move forward — and it still worked, but you can see where the gaps show up.