chat with agentaskProjects2 folders 4 filesAI and agents2 folders 2 filesInfrastructure3 foldersDevelopment5 filesAbout5 files
This site: a portfolio with an AI agent
  • Astro
  • Preact
  • TypeScript
  • Fastify
  • SSE
  • Python
  • FastAPI
  • SQLite

This site: a portfolio with an AI agent

A portfolio built as a desktop: folders, windows, projects with screenshots and a live agent that answers questions about my experience from my own texts.

2026 · author · vlad.vitovtsev.site

Instead of a usual resume landing page, there is a desktop: folders with case studies, windows you can move around, a Projects section with screenshots and a chat with an agent at the entrance. The agent answers a visitor’s questions about my experience, looks for the answer in my own texts, and if it does not know, offers to leave a contact.

The frontend is Astro with Preact islands. Pages are static, all the JavaScript they load fits into 17 KB, and a CI test checks that. Every window also opens as its own page, so each case study has its own URL, og image, sitemap entry and a place in llms.txt.

The agent runs on Fastify and streams answers over SSE. It has a model spend cap, per-IP limits and prompt-injection protection. Context for each answer comes from a Python RAG service: hybrid search over embeddings and BM25 in SQLite. The case study below explains how it works.

Since July 2026: over 230 commits and about 800 tests across the site build, the agent server, RAG and the admin panel.

Case studies from this project