{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}

{01}

Direct

The idea, the data model and the architecture come from a person.

{02}

Generate

The model writes the code and the tests, one small step at a time.

{03}

Verify

Lint, type check, tests and a build pass before every change is accepted.

{AI project: 01} AI inside the product

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
{Case study →}
Boxing newsroom screenshot
{AI project: 02} Vibe coding

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
Habitmat screenshot
Habitmat screenshot
Habitmat screenshot
{AI project: 03} Vibe coding

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
Learningmat screenshot
Learningmat screenshot
Learningmat screenshot

{mattstudio}

Thanks for
looking.