How this site was built
I gave Claude Code two files, my resume and my LinkedIn export, and two skills to work under. It asked me eight questions and offered three visual directions before it wrote any code. This page records what I decided, what the skills enforced, and what I left out on purpose.
Decisions I made
Each one came from a question Claude asked before building. Written as the diff they produced:
- Added: One role in the headline: AI Product Manager. A recruiter decides in seconds, and three roles read as none.
- Removed: Left out an AI chat widget. Chatbots on portfolios are common now. A live product I built proves more than a bot that talks about me.
- Changed: Numbers: resume figures only. My LinkedIn carries two figures the resume does not, so neither appears here.
- Changed: Location: not stated. Working hours are: US and UK/EU.
- Removed: Left out my email address and headshot. LinkedIn and a booking link are the two ways in.
- Added: Hosting on Cloudflare Pages, with the domain kept at name.com.
- Added: One personal line, filed under Known issues.
- Changed: Visual reference: Dieter Rams's work for Braun. Colour only where it marks a function, keys with indicator lights, nothing decorative.
Skill one: Impeccable, for design
Impeccable is a Claude design skill. Before any code, it wrote a product brief from my answers: who visits, what they need to decide, and which facts are off limits. Then, instead of reaching for its favourite look, it rolled a set of visual directions and argued for one.
It offered three. I picked The Release Log, a career written as a product changelog, over a fund factsheet (too close to a finance candidate) and the standard PM portfolio (looks like everyone else's). Midway through, I asked for Dieter Rams as an influence, so the changelog took on Braun's discipline: a warm gray housing, one orange operating key, and coloured indicators that mean something. During the build the skill held the page to a written craft floor: text contrast, keyboard focus, no card grids, no gradient text, no decorative labels above headings.
Skill two: my writing standard, for copy
I wrote this skill for ReturnKoto?, where one wrong number costs trust. It treats a page like a score that collapses if any single part fails. Every sentence on this site went through its five tests:
Substance. Strike every sentence with no fact, number, or decision. If more than a third dies, rewrite.
Inflation. Every strong word must be proved by its sentence. "Verified" survives only when someone verified it.
Competitor. If another candidate could paste the sentence unchanged, it is generic. Replace it with something only I can say.
Effort. The writer does the work, not the reader. The point goes in the first line.
Worst element. One wrong number or one banned phrase fails the whole page.
The skill also bans fabricated figures, vague authority like "studies show", em dashes, and words such as "leverage", "seamless", and "journey".
Stack
Astro, built to static HTML. Type is Mona Sans and Monaspace Neon, GitHub's own faces, because the page borrows its form from GitHub release notes. Hosted on Cloudflare Pages. No analytics, no cookies, no tracking scripts.
What this says about how I work
The AI did the typing. I set the constraints, answered the questions, and chose between options it could not choose for me. That is the job of a product manager on an AI team, and this site is a small, checkable example of it.