Context
I wanted one place that shows what I am working on and that I control end to end. Not a portfolio template, but a site where the content is part of the repository and changes the same way the code does — through a pull request.
Almost everything else follows from that: no database, no admin, no step that could not be taken in git.
How it is built
Astro, static, with no dependency beyond it. The content is Markdown files split into content collections — profile, projects, writing, journal — and every collection has a schema, so a missing or mistyped field fails the build rather than the page.
A section can be hidden without being deleted. Writing sits behind a feature flag today: gone from the navigation, the front page and the sitemap, while the routes and the texts still build. Bringing it back is one line.
Bilingual, without a database
The root of the site is a language gate; both language versions carry the same pages.
Czech and English are not two branches of content but a collection and its translation. The English file is the source, the Czech translation sits under the same slug in *-translations/cs/. A text with no translation renders in English, so no page is ever empty and a translation can lag without anything breaking. Localized components carry the rest of the difference, not duplicated pages.
The journal
The journal is the one part of the site that is a system rather than a page. The rule is one day, one project, one entry — work on one project never goes into an entry about another.
Every entry carries a chip for its project; when that project has a page the chip opens it, and when it does not, the chip is visibly different and inert. The project links the other way, into the journal pre-filtered to itself. The index filters by entry type and by project.
Where it stands technically
A static build deployed on Vercel, on sijanov.com. Shiki highlights the code, and the site has RSS and a sitemap.
The theme is the reader’s own choice and the site remembers it; until they make one, it follows their system. Elements surface as you scroll, but not for anyone who has animations turned off.
The structure holds and changes in small pieces, when something turns out not to fit. What grows is the content.