One output of
a larger system
My hardest client has always been myself. I can make anyone else's product make sense, and I go quiet the moment the product is me. So I built the thing that produces my story instead: a single, evidenced record of who I am, with every surface drawn from it. This page is one of those surfaces.
Strong work I could never pitch
The problem was never a missing portfolio. It was that I make a poor witness to my own value, so the fix had to speak from evidence, not from how I happen to feel about myself on a given morning.
Ten years of it arrived by reputation. I almost never had to apply, and never built the muscle of making my own case.
My strongest work sits inside regulated digital health, under NDA. What I would most want to point at is what I cannot show.
Left to me, the smaller version wins. I had shrugged off production AI work, and left nine years of aviation out of my own story.
So I treated myself like a product
Separate the data from the surfaces. Capture who I am once, tie every claim to its evidence, and let each surface pull from that record instead of from memory. Then point AI at it as an investigator, not a copywriter.
A CV, a letter, a profile, each written from scratch, from memory and mood. Contradictions creep in and the modest version wins.
Every surface reads from the same record, so they cannot quietly drift apart. One voice, one set of facts, kept honest.
Two sources in, four things out
It comes down to two inputs and a small set of outputs. Who I am (the Library) and how it all looks (the design system) feed everything downstream. The Library travels as a live API; the design system as a handover. Nothing on the right is written from scratch.
The record that argues for me
The Library is where it starts, and the part I am proudest of. It stopped being a document a while ago. It is a small service now, with a read API that other tools hold a key to, and an AI biographer sitting on top of it.
The biographer is an investigator, not a ghostwriter. It interviews me one thing at a time, checks each answer against what I actually did, and pushes back in both directions: up when I undersell, down when the evidence will not carry the claim. It is how the aviation years and the AI work found their way back into my own story.
Every block is tagged for how well it is known, and it cannot save anything without taking a snapshot first. Correct the record once, and every surface downstream gets more accurate at the same time.

The same style on every surface
This is the system the whole set is built on: Terracotta. One set of tokens, type and components — so the CV, the letters, and this page all read like they came from the same place.
A warm, editorial system — six earthen colours grounded by cold grey, set in Newsreader & Libre Franklin, with one italic terracotta word as the signature move.
And everything it prints
None of this is a demo. It is how I actually run the search, and the reason the same voice and the same facts show up wherever you meet me.
& this portfolio
A small CMS on a server. The page you are reading is a set of blocks in it, editable without touching the code.
& letter editor
Paste a posting; it drafts a tailored CV and letter from the Library over the API. The facts it cannot touch are not guarded by a prompt — the engine has no operation that can change my name, dates or employers.
Built from scratch by an agent working off the Library. A recruiter found me through it, which is the only test that counts.
Watches seven job boards, scores each posting against my profile, and surfaces only the strong matches. It knows my profile from the Library.


I direct, the machine builds
"Built with AI" is not the interesting part anymore. The division of labour is. Claude Code is the build partner; Figma when a decision is faster drawn than described. The tools are the brushes, and the decisions are mine.
Mine
- The brief, and the story it has to tell
- The information architecture
- Every layout and usability call
- The visual direction
- The accuracy of the copy and the data
- The run-and-verify pass, and the final say
The machine's
- The deep interviews, and the drafting
- Writing the actual code
- Rendering each surface
- The heavy lifting, at speed
The proof is the page
Part of why this exists is plain: I find it genuinely hard to talk about myself, so I built something that does it from evidence instead of performance. And if you are wondering whether I can design and build a real system, you have been reading one. Everything here came off the same source, the same way. The medium is the argument.