How I built this website with AI
I have written documentation for other people's products for years, but I never had a website of my own. My CV lived in two LibreOffice documents, one in English and one in French. This site is what came out of a few evenings of work with AI assistants, mostly Claude Code for the building and Mistral Vibe for research, ideas, and double-checking. This post is the story of how it was made.
Starting from what I had
I did not start with a design or a plan. I opened a terminal in an empty folder containing my two CV files and asked for a modern, static personal website to showcase my CV.
The assistant read the files, extracted the content, and built a first version: plain HTML and CSS, with no framework and no build step. From the start, it left out my home address, my phone number, and my date of birth, because a public page does not need them. That was the first of many decisions where the assistant proposed and I decided.
Small steps, reacting to what I saw
Most of the work was a conversation. I looked at the page, reacted, and asked for the next change:
- A light and a dark mode, with a switch that remembers the choice.
- A promotion I had just received, shown as two roles under the same company.
- The complete history of my earlier roles, found in an old CV from 2014.
- Links to every company and organization I worked for.
- A timeline where every entry has the same structure: company and city first, then the role.
Some ideas looked better in my head than on the page. I tried a layout where the details of each role replaced its summary, and went back to the previous version because it simply worked better. The assistant never argued. It explained the trade-offs, did what I asked, and tested the result.
Honesty is the part only I could do
An AI can write a convincing CV bullet about anything, which is exactly the problem. The most important part of my work was correcting facts:
- A startup I founded got the green light from a coaching organization. The AI wrote that it had been "selected for their program", which was not true.
- My job titles had to match my LinkedIn profile. The differences came to light because I kept asking the assistant what else was missing, as I would ask a colleague or a subject matter expert (SME), and I aligned them one by one.
- I added two career breaks: a year in Australia to earn an English certificate, and almost a year of parental leave to care for my youngest daughter after she was born.
The recommendations on the site are quoted word for word from my work certificates and from LinkedIn, attributed only by role, with no names.
Letting the machine check the boring things
What impressed me most was not the writing but the checking. The assistant ran an automated accessibility audit on every page, in light and dark mode, at desktop and phone width, and fixed what it found until there were no violations left. It checked the color contrast of every text against its background. It also checked that the collapsible menu works entirely with the keyboard, without a mouse.
Then we added a build script, the same approach I use for another website. One command copies the public files, stamps the date in every footer, generates the blog and the PDF version of my CV, and refuses to finish if a single link is broken. It also means the files that must stay private, like my original CVs with my home address, never reach the web server.
What I would tell someone starting today
- Start with the content you already have, not with a design.
- Work in small steps and look at the result after each one.
- Stay the editor. The assistant proposes, you decide what is true and what is shown.
- Treat the assistant like a colleague or an SME. Ask it to double-check its work, and ask what it thinks. Challenge it the way you would challenge them, and it often comes back with better ideas.
- Keep it simple. This site has no framework, no cookies, and no tracking, and it does not need any.
- Let the machine do the checking: accessibility, broken links, well-formed pages.
The whole site is available in English and French. If you want to see the tools behind it, they are listed on the Uses page.