What Runs Where
How This Site Works
This site is a working demo of the systems I build: personalization from live visitor signals and assets that regenerate themselves. Here is exactly what runs where.
01 · Personalization
The Greeting That Knows Where You Are
The hero greeting composes itself from three signals, in order of confidence:
- URL parameters: outreach links can carry ?name= and ?company=, so a message I send you opens with your name already in the greeting.
- IP-to-company lookup: a server endpoint resolves office IPs to a company name, gated on a confidence score with an ISP deny-list, and cached so repeat visits cost nothing. Home and mobile connections stay anonymous.
- Geolocation: a local-language hello for your city or country. City names only appear for recognizable metros; a suburb broadens to the country so it never reads wrong.
02 · AI Search
Built to Be Read by Machines
AI answer engines are becoming a first-touch channel, so the site treats them as an audience:
- llms.txt and llms-full.txt: plain-text maps of the whole site following the llmstxt.org spec, generated from the same data files as the rendered pages so they never go stale.
- Ask-AI footer links: one click opens ChatGPT, Claude, Perplexity, Grok, or Google AI Mode preloaded with a prompt pointing the model at these pages, so its summary is grounded on real content.
- Structured data: every page ships JSON-LD (person, breadcrumbs, articles, collections) so both search engines and LLMs can parse who did what.
03 · Generated Assets
Pages That Build Their Own Artifacts
Anything that could go stale is generated from the same data at build time:
- Social preview images: every page gets its own OG image rendered from its title, with the text placed inside the square crop zone so link previews never cut it off.
- The CV: the printable CV at /cv renders from the same data file as the experience page. Update the data once, both update.
- Sitemap and feeds: sitemap, RSS, and the llms.txt files all derive from the content data, not from manual lists.
04 · The Stack
What It Runs On
Astro with React islands, Tailwind, and static output on Vercel. The AI fit analyzer and the company-reveal lookup run as server endpoints; everything else is prebuilt HTML. Cloudflare handles DNS, a strict Content-Security-Policy allowlists every external script, and analytics run through Google Tag Manager.
The site is designed, written, and maintained with AI coding agents doing most of the work: the same way I build growth systems. This page exists because the site itself is the best demo of that work.
Want the Systems behind It?
The AI Skills are systems like these: copy the ready ones, or hand one to your AI agent and let it build the tool on your machine. The playbooks cover the strategy layer.