Building this site with Claude Code
The short version: I described what I wanted, Claude Code asked a few questions, and by the end of the session the site was live and deploying itself.
Starting from the hosting panel
The domain had been sitting on a Windows/Plesk plan with a “coming soon” page for a year. The first thing Claude did was open the hosting control panel and read what was actually there: IIS, ASP.NET 4.8, FTP, no SSH, no Git integration. That settled the deploy strategy before any code existed.
Spec before code
We wrote a short design document: plain HTML, EN/TR toggle, GitHub Actions pushing to the server over FTPS. Then a plan: six tasks, each with the test to write first, the code, and the commit.
Subagents and reviews
Each task went to a fresh subagent. After each one, a separate reviewer checked the diff against the spec. The first review caught something small (curly apostrophes replaced with straight ones); the final review caught something real (a README that would have sent the deploy into the wrong folder).
Deploy
Push to main, tests run, files sync to httpdocs. The first two runs failed because GitHub’s runners could not be acquired; the third went through. Nothing to fix on our side.
- name: Deploy
uses: SamKirkland/FTP-Deploy-Action@v4
with:
server: ${{ secrets.FTP_SERVER }}
username: ${{ secrets.FTP_USERNAME }}
password: ${{ secrets.FTP_PASSWORD }}
local-dir: ./dist/
What changed since
The design was redone twice, once by hand and once from a Superdesign draft, and now the blog you are reading was added on top of the same pipeline.