Posts
-
Apparently there's a thing called GEO — setting up for AI search, unsure as I go
If search is shifting to AI, it's time to tune the site for AI too — they call it GEO. As a beginner, I sort it into what's settled, what I can't judge for effect yet, and what I actually did this time on crofty's site (llms.txt and structured data).
-
End-to-end testing SFTP/FTPS clients without Docker (Go)
How to run integration tests for file-transfer clients without spinning up a container — using an in-process Go server. Plus the deadlock I hit along the way, and how to fix it.
-
Designing a CLI on the premise that an AI will drive it
crofty is built on the premise that a person installs it and does the first setup, then their AI runs it. How does design change when you include an agent among the operators? Discoverability, state-and-next-step, and not rewriting things on your behalf — shown with real command output.
-
Shipping a CLI with brew and scoop — all at once via GoReleaser
Getting a personal Go CLI out via Homebrew (mac/Linux) and Scoop (Windows). The setup that lets GoReleaser build every OS and generate the manifests in one run, and why I gave up on a cask and used a formula on macOS.
-
Designing a multilingual site — three kinds of text
Going multilingual on a static site isn't just translating the body. Split text into three kinds — body, fixed strings, and config/data — and hold each in the container that fits. With Hugo / crofty as the example, plus the trap where images 404 under /en/.
-
Keeping what you write in your own hands — a small publishing tool
Instead of leaving what you write at the mercy of a platform, publish it to your own domain as a static site. An overview of the small tool I built for that, and the thinking behind it. The first post in a four-part series on building and shipping a publishing tool.