This blog
LiveOccasional public writing about my work, with the earlier journal retained as an archive.
The blog is a project too. It holds occasional posts about the work and decisions behind my products. The journal records an earlier stretch of May and remains available as an archive.
It runs as a static site and ships itself on every push, in English, Portuguese, and German.
How it is built
A static site generator with content written in MDX, so every post and journal entry is a file with a typed header the build refuses to accept if a field is wrong. Three collections sit underneath: the long-form posts, the daily journal with its time-tracking fields, and this projects list with its changelogs. Styling is utility-first, wired straight into the build with no separate config step. The three languages run on the framework’s own routing, with a key that links the versions of one piece together.
The part that is actually different
The thing worth explaining is not the stack, it is the authoring. There is no admin panel and no markdown editor. I talk, an agent writes the MDX with the right header, I read it back and edit, and a push deploys it. The blog is the most visible output of the agentic system the posts keep describing, and keeping that workflow intact is the point, not a convenience. The deploy is deliberately plain to match: the code is the source of truth, the hosting dashboard stays read-only, and every change goes through a commit. The About page is who I am. This page is how the thing is wired.
- Added a current work update and corrected project statuses. Kept the May journal as an archive.
- Locked the deploy pipeline. A push to the main branch builds the site and ships it worldwide in about thirty seconds, with no dashboard step in between.
- Journal entries went trilingual as the standard, each one in English, Portuguese, and German, linked as translations of the same day.
- Added discoverability, a downloadable starter kit, this Building section, a newsletter, reading-time on posts, and Portuguese and German versions.
- Launched.