A record of things I’ve tried with personal domains, self-hosting, and AI use, written up as a chronological diary. Hope it’s useful if you’re trying something similar.
I Built This Blog a Hatena-Style Calendar, and Locked My Own JSON In a Box
A record of building a Hatena-Blog-style calendar, tag cloud, and monthly jump buttons into this blog’s own sidebar - including tracking down why the calendar silently failed to render, caused by Hugo’s html/template auto-escaping mangling an inline JSON blob.
Riding the Momentum of Starting the Blog, I Also Shipped a Singlish Glossary Site
A small side project shipped the same day as this blog: a plain HTML/CSS/JS Singlish-term glossary for Japanese speakers, plus the subdomain + repo pattern that later projects would reuse.
Before Writing a Single Post, I Renamed My GitHub Account
The decision to start publishing this blog: Hugo + PaperMod, GitHub Actions deploying to GitHub Pages under a custom domain, a private source repo force-pushing built output to a separate public repo, and a GitHub username rename along the way.
I Built Myself an RSS Reader, and Tore It Down the Same Day
Self-hosted a Miniflux RSS reader on the same server as MulmoClaude to aggregate news by category, then decided the same day it would just become an overflowing unread inbox, and removed the entire stack.
With the Domain Working, I Built Myself a Digital Business Card the Same Day
A same-day side quest after getting the domain working: a static digital business card at a new subdomain, served entirely separately from the main app, with a vCard-download button, a WhatsApp click-to-chat link, and a small run-in with Cloudflare’s email obfuscation.
Getting My Own Domain, and Email On It
Got a domain with my own name on it, found a backdoor I’d accidentally left open while reviewing access settings, and hit silent delivery failures even with SPF/DKIM/DMARC all correctly configured.
After Making MulmoClaude Run 24/7, Its Background Automation Started Looping Forever
The day after moving to an always-on server, a background automation task (the journal feature) started endlessly retrying the same sessions. The root cause: a millisecond-precision mismatch between Python and Node.js timestamps.
Moving to a Server That Never Turns Off
Migrating MulmoClaude to AWS Lightsail. A silent CSRF trusted-origin failure, a mystery ‘Network error calling …’ traced to a Docker Desktop vs Docker Engine networking difference, and a memory-plan saga.
How I Ran Into MulmoClaude, and Got It Actually Usable
A regular office worker who tinkers with computers on the side, building a personal AI assistant setup from scratch. Includes the ERR_MODULE_NOT_FOUND stumble.