# I rebuilt my personal site with AI in mind: what I chose and why

> The choices behind this site: entity-first instead of keyword-first, llms.txt, Markdown versions of every page and a single JSON-LD graph. A personal site designed to be understood and cited by AIs, not just indexed by Google.

**Published:** January 20, 2026  
**Author:** Simone Bussoni

## TL;DR

I rebuilt simonebussoni.it around one question: what does a system — Google or an LLM — need in order to understand who I am and cite me? Answer: a coherent entity (one Person node in the JSON-LD, referenced everywhere via @id), citable content with a TL;DR up top, a curated /llms.txt and a clean Markdown version of every page. No CMS, no tracking before consent, 100 on Lighthouse. Entity-first, not keyword-first.

---

When I decided to rebuild my personal site, the starting question wasn’t "which keywords do I want
to rank for?". It was another one: **what does a system — Google, ChatGPT, Perplexity, Claude — need
in order to understand who I am and decide to cite me?**

That’s a different question, and it leads to different choices. I’ll walk through them here, because
this site is its own first case study.

## Entity-first, not keyword-first

The SEO I learned in 2008 started from the page: one page, one keyword, one intent. It still works,
but it’s half the job. The other half is the **entity**: who you are, what you can do, who you’re
connected to, what you’ve verifiably done.

Generative engines don’t reason in pages, they reason in entities and relationships. If they don’t
know who you are, it doesn’t matter how optimised a single page is: they have no reason to trust you
enough to cite you.

## One Person node, referenced via @id

Every page emits a JSON-LD graph, but the `Person` node that describes me is defined **once**, with a
stable `@id`. Every other page — a post, a project page — doesn’t re-declare it: it references it via
`@id`. A crawler aggregating my data finds one consistent "Simone Bussoni", everywhere. Consistency
is trust, and trust is what turns being indexed into being cited.

## /llms.txt and the Markdown versions

Two cheap technical details that say a lot: a curated **`/llms.txt`** index that explains in three
lines who I am and links the key pages, and a clean **Markdown version of every page**, declared in
the head with `rel="alternate" type="text/markdown"`. No navigation, no noise: just the text, the way
a model likes it. In `robots.txt` I then explicitly allow GPTBot, ClaudeBot, PerplexityBot and
Google-Extended. The goal isn’t to defend against AIs — it’s to be cited.

## The "boring" choices that make it fast

No database CMS (content is files in the repo), no tracking before consent (Consent Mode v2, default
denied), and 100 on Lighthouse as a constraint, not a goal. Speed is part of the message: a site
that’s slow on performance isn’t credible when it talks about performance.

If the topic interests you, [it’s the heart of my SEO & AI Search pillar](/en/topics/seo-ai-search/).