{AI: models at work}
AI
AI as part of everyday work: models that run inside a product, and applications built together with a model, where a developer sets the direction, reviews the code and tests it.
{Vibe coding, with rules}
Direct
The idea, the data model and the architecture come from a person.
Generate
The model writes the code and the tests, one small step at a time.
Verify
Lint, type check, tests and a build pass before every change is accepted.
Boxing newsroom
A news pipeline on a VPS. It collects boxing news from 19 sources in many languages, a model rewrites each story in English, and code checks the result before it lands in WordPress as a draft.
- The model decides, the code builds
- An editor approves every draft
- Facts and records come from data, not from the model
- Year: 2026
- Python
- Flask
- SQLite
- Claude API
- React
- TypeScript
- Vite
- PWA
- VPS

Habitmat
A personal habit tracker. Every habit has a grid of weeks, streaks and statistics; there is also a shopping list and a workout plan with animated exercises. WordPress is the backend: habits and daily entries are content types with ACF fields behind a custom REST API with token login.
- Installs on the phone and reads offline
- Nothing is stored that can be calculated
- 16 test files next to the code
- Year: 2026
- React 19
- TypeScript
- Vite
- TanStack Query
- React Router
- Vitest
- Testing Library
- WordPress
- ACF Pro
- REST API
- PWA



Learningmat
A flashcard app for learning. 135 cards in 10 topics, each with a question, an answer and examples with code. The content is plain JSON files in the repository, checked and bundled at build time, so there is no database and no admin panel.
- Topics follow a numbered learning path
- A broken content file stops the build with a clear message
- Works offline as a PWA
- Year: 2026
- React 19
- TypeScript
- Vite
- React Router
- Vitest
- JSON content
- PWA


